Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix issue #1431 #1432

Merged
merged 1 commit into from
Sep 10, 2021
Merged

Fix issue #1431 #1432

merged 1 commit into from
Sep 10, 2021

Conversation

xpe
Copy link
Contributor

@xpe xpe commented Sep 8, 2021

This PR fixes the problem identified in #1431: currently, environmental variables set in .env are not detected in sqlx database ... commands.

This problem is a regression caused by commit 0e51272 which was part of issue #1391.

Root Cause

dotenv() must execute before clap's get_matches()

Why: dotenv() must execute before clap's get_matches()
@@ -9,6 +10,7 @@ async fn main() {
// so we want to notch out that superfluous "sqlx"
let args = env::args_os().skip(2);

dotenv().ok();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
dotenv().ok();
let _ = dotenv();

Using .ok() to discard errors is not particularily idiomatic. This would have been fixed in dotenv's examples already if it was actively maintained.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jplatte thanks for your suggestion. Some follow up questions:

To what degree is this a style concern? A behavior concern?

Using .ok() to discard errors is not particularly idiomatic.

Why?

In particular, has the Clippy community discussed this? Has there been a consensus or something close to it? Here's what I've found that is somewhat related: Warn about blanket let _ =

I don't have a very strong preference here, but I lean towards preferring using ok() as above. For example, I think I agree with this part of tshepang's comment:

I ... think dotenv.ok() makes it clear enough that failure is acceptable

P.S. If you are interested in how I think about this more generally, see What does 'idiomatic' mean in Rust?

Copy link
Contributor

@jplatte jplatte Sep 9, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Behavior is the exact same, this is just a style concern. I've left a comment on the clippy issue you linked with my arguments for let _ = <expr>; over <expr>.ok();.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Found another issue: rust-lang/rust#66116

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We use .ok() a lot internally; IMO it's quicker to use because it's auto-suggested by my IDE as soon as I type .o which is personally important to me when setting up boilerplate like this.

In the discussions linked here, it seems like the jury is still out on the issue of what's idiomatic and what's not in terms of discarding results, so I don't think it's necessary to spend much time bikeshedding. Just use .ok() for now and if that method gains a #[must_use] later, or Clippy starts linting against it, then we can cargo fix that easily.

@abonander abonander merged commit bb33a29 into launchbadge:master Sep 10, 2021
placrosse pushed a commit to JetASAP/sqlx that referenced this pull request Nov 19, 2021
* Fix error message about wildcard overrides (launchbadge#1276)

Co-authored-by: Austin Bonander <[email protected]>

* feat(docs): add an FAQ (launchbadge#1319)

* doc(faq): mention how to invert `= ANY($1)`

* doc(faq): empty array cases for `ANY` and `ALL`

* doc(faq): fix wording for empty cases

* Update crc 1.8.1 -> 2.0.0 (launchbadge#1256)

* Support MACADDR in Postgres (launchbadge#1329)

* fix(mysql): implement type traits for `chrono::DateTime<Local>` (launchbadge#1335)

closes launchbadge#1222

* Keep track of column typing in SQLite EXPLAIN parsing (launchbadge#1323)

* NewRowid, Column opcodes, better pointer handling

* Implement tracking of column typing on sqlite explain parser

* fmt for sqlite column typing for explain parsing

Co-authored-by: marshoepial <[email protected]>

* fix(pool): reimplement pool internals with `futures-intrusive` (launchbadge#1320)

* fix(pg_money): handle negative values correctly in `PgMoney::from_decimal()` (launchbadge#1334)

closes launchbadge#1321

* fix(macros): tell the compiler about external files/env vars to watch (launchbadge#1332)

* fix(macros): tell the compiler about external files/env vars to watch

closes launchbadge#663
closes launchbadge#681

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

suggest embedding migrations on `sqlx migrate add` in a new project

* fix(macros): prefix generated variable names in `query_as!()` (launchbadge#1336)

closes launchbadge#1322

* Use tokio `spawn_blocking` instead of `block_in_place` (launchbadge#1333)

This fixes a panic when sharing an SQLite connection pool between tokio runtime and actix runtime

* Mark the original DatabaseError as source. (launchbadge#1197)

* Use postgres as maintenance db unless maintaining postgres itself (launchbadge#1339)

Fixes launchbadge#1283.

* Fix GitHub Actions and integration test (launchbadge#1346)

* fix test suite

* rustfmt

* need Row

* test: fix integration test scripts and update the upstream supported databases

Signed-off-by: Atkins Chang <[email protected]>

* ci(actions): update supported databases

Signed-off-by: Atkins Chang <[email protected]>

* ci(actions): use `pg_isready` instead of `sleep` to avoid error cause by database not ready

Signed-off-by: Atkins Chang <[email protected]>

* feat(core): add `trait PgConnectionInfo` for connection parameter status from server

Signed-off-by: Atkins Chang <[email protected]>

* test(postgres): fix integration test for postgres

Signed-off-by: Atkins Chang <[email protected]>

* test(mysql): fix integration tests

Signed-off-by: Atkins Chang <[email protected]>

* ci(actions): test database against the oldest and newest supported versions

Signed-off-by: Atkins Chang <[email protected]>

* docs(core): document `trait PgConnectionInfo`

Signed-off-by: Atkins Chang <[email protected]>

Co-authored-by: Montana Low <[email protected]>

* build(deps): bump git2 from 0.13.19 to 0.13.20 (launchbadge#1362)

Signed-off-by: Atkins Chang <[email protected]>

* sqlite: fix a couple segfaults (launchbadge#1351)

* sqlite: use Arc instead of Copy-able StatementHandle

This guarantees that StatementHandle is never used after calling
`sqlite3_finalize`. Now `sqlite3_finalize` is only called when
StatementHandle is dropped.

(cherry picked from commit 5eebc05)

* sqlite: use Weak poiter to StatementHandle in the worker

Otherwise some tests fail to close connection.

(cherry picked from commit 5461eee)

* Fix segfault due to race condition in sqlite (launchbadge#1300)

(cherry picked from commit bb62cf7)

* fix(sqlite): run `sqlite3_reset()` in `StatementWorker`

this avoids possible race conditions without using a mutex

* fix(sqlite): have `StatementWorker` keep a strong ref to `ConnectionHandle`

this should prevent the database handle from being finalized before all statement handles
have been finalized

* fix(sqlite/test): make `concurrent_resets_dont_segfault` runtime-agnostic

Co-authored-by: link2xt <[email protected]>
Co-authored-by: Adam Cigánek <[email protected]>

* Add docs for fetch_all, example for postgres transactions (launchbadge#1255)

* reference fetch_all() in query macros

* add example for using transactions in postgres

* fix: Ignore __CARGO_FIX_PLZ when running "cargo metadata" in macro (launchbadge#1352)

* Fix bug for PostgreSQL if the statement has type holes (launchbadge#1363)

* fix: wait until ready after executing other helper queries while pg quering is executing

Signed-off-by: Atkins Chang <[email protected]>

* fix: use tls parameter for testing target

Signed-off-by: Atkins Chang <[email protected]>

* fix(cli): pin `clap_derive` version (launchbadge#1381)

When `clap_derive 3.0.0-beta.4` released, new invocations of `cargo install sqlx-cli` would try to compile that against `clap 3.0.0-beta.2` which caused some breakages.

Until `clap 3.0.0` proper is released, we need to pin both versions to insure against potential breakages from automatic upgrades.

closes launchbadge#1378

* cockroachdb fix for macro (launchbadge#1386)

* preparing 0.5.6 release (launchbadge#1382)

* fix(pool): reenable connection reaper

* fix warnings

* chore: bump published crates to 0.5.6

* chore: update CHANGELOG.md for 0.5.6

* chore: bump versions of sqlx-* in dependencies

* fix(macros): use `resolve_path` when getting path for `include_str!()` (launchbadge#1392)

fixes launchbadge#1387

* fix(postgres): avoid recursively spawning tasks in `PgListener::drop()` (launchbadge#1393)

refactor(pool): deprecate `PoolConnection::release()`, provide renamed alts

* chore: prepare 0.5.7 (hotfix) release (launchbadge#1394)

* fix(cli) move database_url launchbadge#1391 (launchbadge#1400)

* Use promptly instead of dialoguer (launchbadge#1410)

See launchbadge#1409

Co-authored-by: David James <[email protected]>

* Getting current Handle in Drop (launchbadge#1395)

Signed-off-by: Freyskeyd <[email protected]>

* Add more debugging info to unresolved type declaration panic (launchbadge#1416)

* Don't require cargo to build offline queries (launchbadge#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 launchbadge#1414

Signed-off-by: Robert Collins <[email protected]>

* Add executor trait "aliases" (launchbadge#1412)

* feat: allow log level customization (launchbadge#1371)

* don't assert #[repr(...)] on `#[derive(sqlx::Type)]` unless needed (launchbadge#1305)

* Reduce futures-util features (launchbadge#1427)

* Reduce futures-util features

* Remove unused futures crate from sqlx-macros

* Fix issue launchbadge#1431 (launchbadge#1432)

Why: dotenv() must execute before clap's get_matches()

Co-authored-by: David James <[email protected]>

* Fix CIDR[] not being compatible with Vec<IpNetwork> (launchbadge#1433)

* Support the immutable option on SQLite connections (launchbadge#1289)

Co-authored-by: Austin Bonander <[email protected]>

* Finish support for Postgres COPY (launchbadge#1345)

* feat(postgres): WIP implement `COPY FROM/TO STDIN`

Signed-off-by: Austin Bonander <[email protected]>

* feat(postgres): WIP implement `COPY FROM/TO STDIN`

Signed-off-by: Austin Bonander <[email protected]>

* test and complete support for postgres copy

Co-authored-by: Austin Bonander <[email protected]>

* fix: run `cargo fmt`

* Support custom initial options for sqlite  (launchbadge#1295)

* Support custom initial options for sqlite

Apply suggestions from code review

Co-authored-by: Austin Bonander <[email protected]>

Apply suggestions from code review

Co-authored-by: Austin Bonander <[email protected]>

Use order-preserving map to set pragmas for an initial sqlite statement

 Use Cow<'static, str> instead of String

Co-authored-by: Austin Bonander <[email protected]>

* docs: added a note about MySQL syntax in the README example (launchbadge#1445)

* fix(mysql): handle multiple waiting results correctly (launchbadge#1439)

* test(mysql): add test case for pending rows and dropped transaction

* fix(mysql): handle multiple waiting results correctly

* Fix a panic in the worker thread when dropping the connection while `SqliteRow`s still exist (launchbadge#1450)

* chore(sqlite): add repro for launchbadge#1419

* fix(sqlite): hold a reference to the connection in `SqliteRow`

fixes launchbadge#1419

* Upgrade hmac to 0.11 (launchbadge#1443)

* Update postgres 14 test to 14rc1 (launchbadge#1454)

* Shut down statement worker in Sqlite Connection::close (launchbadge#1453)

* add explicit shutdown of sqlite statement worker in Connection::close()

Signed-off-by: Andrew Whitehead <[email protected]>

* test sqlite database close method

Signed-off-by: Andrew Whitehead <[email protected]>

* await worker shutdown after dropping SqliteConnection

Signed-off-by: Andrew Whitehead <[email protected]>

* restore explicit drop

Signed-off-by: Andrew Whitehead <[email protected]>

* Revert "feat: allow log level customization (launchbadge#1371)" (launchbadge#1465)

This reverts commit 719d800.

* [SQLite] encoding & decoding `NaiveTime` with correct format (launchbadge#1459)

* Fix SQLite encoding format

* Update SQLite decoding format

* Update sqlx-core/src/sqlite/types/chrono.rs

* fixup: add `#[rustfmt::skip]`

Co-authored-by: Austin Bonander <[email protected]>
Co-authored-by: Austin Bonander <[email protected]>

* Add reverting instructions to README (launchbadge#1468)

Instructions on reverting migrations are missing from the README. Here are some that others may find helpful.

* preparing 0.5.8 release (launchbadge#1466)

* preparing 0.5.8 release

* fix warnings before release

* prepare 0.5.9 hotfix release (launchbadge#1469)

* Update README.md (launchbadge#1479)

* fix(test): fix mismatched type error in MySQL type tests (launchbadge#1517)

* fix new warning about trailing semicolon in expression macros

* fix(test): fix mismatched type error in MySQL type tests

* Add support for serialized threading mode to sqlite (launchbadge#1514)

* Add support for serialized threading mode

* Typos

* Fix build

* Add persistent setter (launchbadge#1503) (launchbadge#1508)

* Reduce indexmap version to 1.6.2 (launchbadge#1501)

deno_core currently uses `=1.6.2` for indexmap, and Cargo refuses to resolve a version with sqlx's requirement of 1.7.0.

https://github.com/denoland/deno/blob/004d07dccd69c9fae8370665632d90401f770938/core/Cargo.toml#L18

* fix(postgres): allow rust_decimal::Decimal in PgRange (launchbadge#1523)

* fix(postgres): allow rust_decimal::Decimal in PgRange

* test(postgres): add tests for BigDecimal and Decimal in ranges

* Update FAQ to include building on docs.rs (launchbadge#1497)

Thanks to @jplatte in the sqlx Discord for providing this solution.

* docs: revise `Pool` docs in a couple places (launchbadge#1526)

* derive Clone, Copy for AnyKind (launchbadge#1474)

* fix panic when converting negative chrono::Duration into PgInterval (launchbadge#1475)

* fix PgInterval convert failure for negative chrono::Duration

* add unit tests for PgInterval

* Fix: remove redundancy because nanosecond overflow implies microsecond overflow

* Encode/Decode impl for Cow<'_, str> (launchbadge#1343)

* Encode/Decode impl for Cow<'_, str>

resolves launchbadge#1214

* --wip-- [skip ci]

* Add Cow decode/encode to other databases and fix build

* Include a reference to the shape of the migration files in the migrate macro documentation (launchbadge#1498)

* fix(readme): link to `dotenv` crate

closes launchbadge#1405

* fix(readme): show runtime features in quickstart

closes launchbadge#1492

* fix(readme): mention `offline` feature

closes launchbadge#1490

* fix(readme): mention examples

* fix(sqlx-cli/readme): mention `openssl-vendored`

* Copy API improvement (launchbadge#1536) (launchbadge#1537)

* expose PgCopyIn

* downgrade Pool<Posgres> copy_in_raw/out_row to take &self

* bump libsqlite3-sys to 0.23.1 (launchbadge#1535)

Co-authored-by: Jonas Platte <[email protected]>
Co-authored-by: Austin Bonander <[email protected]>
Co-authored-by: Akhil Velagapudi <[email protected]>
Co-authored-by: nomick <[email protected]>
Co-authored-by: marshoepial <[email protected]>
Co-authored-by: marshoepial <[email protected]>
Co-authored-by: guylapid <[email protected]>
Co-authored-by: Luca Palmieri <[email protected]>
Co-authored-by: Daniel Faust <[email protected]>
Co-authored-by: Atkins <[email protected]>
Co-authored-by: Montana Low <[email protected]>
Co-authored-by: link2xt <[email protected]>
Co-authored-by: Adam Cigánek <[email protected]>
Co-authored-by: Rafael Epplée <[email protected]>
Co-authored-by: Fredrik Østrem <[email protected]>
Co-authored-by: Altan Özlü <[email protected]>
Co-authored-by: Evan Cameron <[email protected]>
Co-authored-by: David James <[email protected]>
Co-authored-by: David James <[email protected]>
Co-authored-by: Simon Paitrault <[email protected]>
Co-authored-by: Robert Collins <[email protected]>
Co-authored-by: Elise <[email protected]>
Co-authored-by: Emil Gardström <[email protected]>
Co-authored-by: Paolo Barbolini <[email protected]>
Co-authored-by: David Marcin <[email protected]>
Co-authored-by: Montana Low <[email protected]>
Co-authored-by: Ghass Mo <[email protected]>
Co-authored-by: Vlad Frolov <[email protected]>
Co-authored-by: Kohei Suzuki <[email protected]>
Co-authored-by: Andrew Whitehead <[email protected]>
Co-authored-by: Billy Chan <[email protected]>
Co-authored-by: Austin Bonander <[email protected]>
Co-authored-by: Erik <[email protected]>
Co-authored-by: Yerkebulan Tulibergenov <[email protected]>
Co-authored-by: Lucille Blumire <[email protected]>
Co-authored-by: Akira Hayakawa <[email protected]>
Co-authored-by: Daniel Imfeld <[email protected]>
Co-authored-by: meh <[email protected]>
Co-authored-by: Russ Weas <[email protected]>
Co-authored-by: yuyawk <[email protected]>
Co-authored-by: Kirill Mironov <[email protected]>
Co-authored-by: Zbigniew Żołnierowicz <[email protected]>
Co-authored-by: Akira Hayakawa <[email protected]>
Co-authored-by: David Yamnitsky <[email protected]>
placrosse pushed a commit to JetASAP/sqlx that referenced this pull request Nov 20, 2021
* release: v0.5.4

* Fix infinite compile loop regression from recursive Lazy reference

* release: v0.5.5

* Improve root README.md and sqlx-cli/README.md (launchbadge#1262)

* readme: Fix inconsistent list style

* readme: Improve text alignment

* readme: Fix missing links

* readme: Consistently use code formatting for runtime & TLS crates and dedup links

* readme: Add SQLx is not an ORM section

* readme: Improve documentation about offline mode

* Rename _expr to expr (launchbadge#1264)

* Fix error message about wildcard overrides (launchbadge#1276)

Co-authored-by: Austin Bonander <[email protected]>

* Fix error message about wildcard overrides (launchbadge#1276) (#8)

Co-authored-by: Austin Bonander <[email protected]>

Co-authored-by: Jonas Platte <[email protected]>
Co-authored-by: Austin Bonander <[email protected]>

* Fix error message about wildcard overrides (launchbadge#1276) (#10)

Co-authored-by: Austin Bonander <[email protected]>

Co-authored-by: Jonas Platte <[email protected]>
Co-authored-by: Austin Bonander <[email protected]>

* feat(docs): add an FAQ (launchbadge#1319)

* doc(faq): mention how to invert `= ANY($1)`

* doc(faq): empty array cases for `ANY` and `ALL`

* doc(faq): fix wording for empty cases

* Update crc 1.8.1 -> 2.0.0 (launchbadge#1256)

* Support MACADDR in Postgres (launchbadge#1329)

* fix(mysql): implement type traits for `chrono::DateTime<Local>` (launchbadge#1335)

closes launchbadge#1222

* Keep track of column typing in SQLite EXPLAIN parsing (launchbadge#1323)

* NewRowid, Column opcodes, better pointer handling

* Implement tracking of column typing on sqlite explain parser

* fmt for sqlite column typing for explain parsing

Co-authored-by: marshoepial <[email protected]>

* fix(pool): reimplement pool internals with `futures-intrusive` (launchbadge#1320)

* fix(pg_money): handle negative values correctly in `PgMoney::from_decimal()` (launchbadge#1334)

closes launchbadge#1321

* fix(macros): tell the compiler about external files/env vars to watch (launchbadge#1332)

* fix(macros): tell the compiler about external files/env vars to watch

closes launchbadge#663
closes launchbadge#681

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

suggest embedding migrations on `sqlx migrate add` in a new project

* fix(macros): prefix generated variable names in `query_as!()` (launchbadge#1336)

closes launchbadge#1322

* Use tokio `spawn_blocking` instead of `block_in_place` (launchbadge#1333)

This fixes a panic when sharing an SQLite connection pool between tokio runtime and actix runtime

* Mark the original DatabaseError as source. (launchbadge#1197)

* Use postgres as maintenance db unless maintaining postgres itself (launchbadge#1339)

Fixes launchbadge#1283.

* Fix GitHub Actions and integration test (launchbadge#1346)

* fix test suite

* rustfmt

* need Row

* test: fix integration test scripts and update the upstream supported databases

Signed-off-by: Atkins Chang <[email protected]>

* ci(actions): update supported databases

Signed-off-by: Atkins Chang <[email protected]>

* ci(actions): use `pg_isready` instead of `sleep` to avoid error cause by database not ready

Signed-off-by: Atkins Chang <[email protected]>

* feat(core): add `trait PgConnectionInfo` for connection parameter status from server

Signed-off-by: Atkins Chang <[email protected]>

* test(postgres): fix integration test for postgres

Signed-off-by: Atkins Chang <[email protected]>

* test(mysql): fix integration tests

Signed-off-by: Atkins Chang <[email protected]>

* ci(actions): test database against the oldest and newest supported versions

Signed-off-by: Atkins Chang <[email protected]>

* docs(core): document `trait PgConnectionInfo`

Signed-off-by: Atkins Chang <[email protected]>

Co-authored-by: Montana Low <[email protected]>

* build(deps): bump git2 from 0.13.19 to 0.13.20 (launchbadge#1362)

Signed-off-by: Atkins Chang <[email protected]>

* sqlite: fix a couple segfaults (launchbadge#1351)

* sqlite: use Arc instead of Copy-able StatementHandle

This guarantees that StatementHandle is never used after calling
`sqlite3_finalize`. Now `sqlite3_finalize` is only called when
StatementHandle is dropped.

(cherry picked from commit 5eebc05)

* sqlite: use Weak poiter to StatementHandle in the worker

Otherwise some tests fail to close connection.

(cherry picked from commit 5461eee)

* Fix segfault due to race condition in sqlite (launchbadge#1300)

(cherry picked from commit bb62cf7)

* fix(sqlite): run `sqlite3_reset()` in `StatementWorker`

this avoids possible race conditions without using a mutex

* fix(sqlite): have `StatementWorker` keep a strong ref to `ConnectionHandle`

this should prevent the database handle from being finalized before all statement handles
have been finalized

* fix(sqlite/test): make `concurrent_resets_dont_segfault` runtime-agnostic

Co-authored-by: link2xt <[email protected]>
Co-authored-by: Adam Cigánek <[email protected]>

* Add docs for fetch_all, example for postgres transactions (launchbadge#1255)

* reference fetch_all() in query macros

* add example for using transactions in postgres

* fix: Ignore __CARGO_FIX_PLZ when running "cargo metadata" in macro (launchbadge#1352)

* Fix bug for PostgreSQL if the statement has type holes (launchbadge#1363)

* fix: wait until ready after executing other helper queries while pg quering is executing

Signed-off-by: Atkins Chang <[email protected]>

* fix: use tls parameter for testing target

Signed-off-by: Atkins Chang <[email protected]>

* fix(cli): pin `clap_derive` version (launchbadge#1381)

When `clap_derive 3.0.0-beta.4` released, new invocations of `cargo install sqlx-cli` would try to compile that against `clap 3.0.0-beta.2` which caused some breakages.

Until `clap 3.0.0` proper is released, we need to pin both versions to insure against potential breakages from automatic upgrades.

closes launchbadge#1378

* cockroachdb fix for macro (launchbadge#1386)

* preparing 0.5.6 release (launchbadge#1382)

* fix(pool): reenable connection reaper

* fix warnings

* chore: bump published crates to 0.5.6

* chore: update CHANGELOG.md for 0.5.6

* chore: bump versions of sqlx-* in dependencies

* fix(macros): use `resolve_path` when getting path for `include_str!()` (launchbadge#1392)

fixes launchbadge#1387

* fix(postgres): avoid recursively spawning tasks in `PgListener::drop()` (launchbadge#1393)

refactor(pool): deprecate `PoolConnection::release()`, provide renamed alts

* chore: prepare 0.5.7 (hotfix) release (launchbadge#1394)

* fix(cli) move database_url launchbadge#1391 (launchbadge#1400)

* Use promptly instead of dialoguer (launchbadge#1410)

See launchbadge#1409

Co-authored-by: David James <[email protected]>

* Getting current Handle in Drop (launchbadge#1395)

Signed-off-by: Freyskeyd <[email protected]>

* Add more debugging info to unresolved type declaration panic (launchbadge#1416)

* Don't require cargo to build offline queries (launchbadge#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 launchbadge#1414

Signed-off-by: Robert Collins <[email protected]>

* Add executor trait "aliases" (launchbadge#1412)

* feat: allow log level customization (launchbadge#1371)

* don't assert #[repr(...)] on `#[derive(sqlx::Type)]` unless needed (launchbadge#1305)

* Reduce futures-util features (launchbadge#1427)

* Reduce futures-util features

* Remove unused futures crate from sqlx-macros

* Fix issue launchbadge#1431 (launchbadge#1432)

Why: dotenv() must execute before clap's get_matches()

Co-authored-by: David James <[email protected]>

* Fix CIDR[] not being compatible with Vec<IpNetwork> (launchbadge#1433)

* Support the immutable option on SQLite connections (launchbadge#1289)

Co-authored-by: Austin Bonander <[email protected]>

* Finish support for Postgres COPY (launchbadge#1345)

* feat(postgres): WIP implement `COPY FROM/TO STDIN`

Signed-off-by: Austin Bonander <[email protected]>

* feat(postgres): WIP implement `COPY FROM/TO STDIN`

Signed-off-by: Austin Bonander <[email protected]>

* test and complete support for postgres copy

Co-authored-by: Austin Bonander <[email protected]>

* fix: run `cargo fmt`

* Support custom initial options for sqlite  (launchbadge#1295)

* Support custom initial options for sqlite

Apply suggestions from code review

Co-authored-by: Austin Bonander <[email protected]>

Apply suggestions from code review

Co-authored-by: Austin Bonander <[email protected]>

Use order-preserving map to set pragmas for an initial sqlite statement

 Use Cow<'static, str> instead of String

Co-authored-by: Austin Bonander <[email protected]>

* docs: added a note about MySQL syntax in the README example (launchbadge#1445)

* fix(mysql): handle multiple waiting results correctly (launchbadge#1439)

* test(mysql): add test case for pending rows and dropped transaction

* fix(mysql): handle multiple waiting results correctly

* Fix a panic in the worker thread when dropping the connection while `SqliteRow`s still exist (launchbadge#1450)

* chore(sqlite): add repro for launchbadge#1419

* fix(sqlite): hold a reference to the connection in `SqliteRow`

fixes launchbadge#1419

* Upgrade hmac to 0.11 (launchbadge#1443)

* Update postgres 14 test to 14rc1 (launchbadge#1454)

* Shut down statement worker in Sqlite Connection::close (launchbadge#1453)

* add explicit shutdown of sqlite statement worker in Connection::close()

Signed-off-by: Andrew Whitehead <[email protected]>

* test sqlite database close method

Signed-off-by: Andrew Whitehead <[email protected]>

* await worker shutdown after dropping SqliteConnection

Signed-off-by: Andrew Whitehead <[email protected]>

* restore explicit drop

Signed-off-by: Andrew Whitehead <[email protected]>

* Revert "feat: allow log level customization (launchbadge#1371)" (launchbadge#1465)

This reverts commit 719d800.

* [SQLite] encoding & decoding `NaiveTime` with correct format (launchbadge#1459)

* Fix SQLite encoding format

* Update SQLite decoding format

* Update sqlx-core/src/sqlite/types/chrono.rs

* fixup: add `#[rustfmt::skip]`

Co-authored-by: Austin Bonander <[email protected]>
Co-authored-by: Austin Bonander <[email protected]>

* Add reverting instructions to README (launchbadge#1468)

Instructions on reverting migrations are missing from the README. Here are some that others may find helpful.

* preparing 0.5.8 release (launchbadge#1466)

* preparing 0.5.8 release

* fix warnings before release

* prepare 0.5.9 hotfix release (launchbadge#1469)

* Update README.md (launchbadge#1479)

* fix(test): fix mismatched type error in MySQL type tests (launchbadge#1517)

* fix new warning about trailing semicolon in expression macros

* fix(test): fix mismatched type error in MySQL type tests

* Add support for serialized threading mode to sqlite (launchbadge#1514)

* Add support for serialized threading mode

* Typos

* Fix build

* Add persistent setter (launchbadge#1503) (launchbadge#1508)

* Reduce indexmap version to 1.6.2 (launchbadge#1501)

deno_core currently uses `=1.6.2` for indexmap, and Cargo refuses to resolve a version with sqlx's requirement of 1.7.0.

https://github.com/denoland/deno/blob/004d07dccd69c9fae8370665632d90401f770938/core/Cargo.toml#L18

* fix(postgres): allow rust_decimal::Decimal in PgRange (launchbadge#1523)

* fix(postgres): allow rust_decimal::Decimal in PgRange

* test(postgres): add tests for BigDecimal and Decimal in ranges

* Update FAQ to include building on docs.rs (launchbadge#1497)

Thanks to @jplatte in the sqlx Discord for providing this solution.

* docs: revise `Pool` docs in a couple places (launchbadge#1526)

* derive Clone, Copy for AnyKind (launchbadge#1474)

* fix panic when converting negative chrono::Duration into PgInterval (launchbadge#1475)

* fix PgInterval convert failure for negative chrono::Duration

* add unit tests for PgInterval

* Fix: remove redundancy because nanosecond overflow implies microsecond overflow

* Encode/Decode impl for Cow<'_, str> (launchbadge#1343)

* Encode/Decode impl for Cow<'_, str>

resolves launchbadge#1214

* --wip-- [skip ci]

* Add Cow decode/encode to other databases and fix build

* Include a reference to the shape of the migration files in the migrate macro documentation (launchbadge#1498)

* fix(readme): link to `dotenv` crate

closes launchbadge#1405

* fix(readme): show runtime features in quickstart

closes launchbadge#1492

* fix(readme): mention `offline` feature

closes launchbadge#1490

* fix(readme): mention examples

* fix(sqlx-cli/readme): mention `openssl-vendored`

* Copy API improvement (launchbadge#1536) (launchbadge#1537)

* expose PgCopyIn

* downgrade Pool<Posgres> copy_in_raw/out_row to take &self

* bump libsqlite3-sys to 0.23.1 (launchbadge#1535)

* add #[cfg(not(target_arch = "wasm32"))] to fix compile errors

Co-authored-by: Ryan Leckey <[email protected]>
Co-authored-by: toshokan <[email protected]>
Co-authored-by: Jonas Platte <[email protected]>
Co-authored-by: Rohan Sharma <[email protected]>
Co-authored-by: Austin Bonander <[email protected]>
Co-authored-by: Akhil Velagapudi <[email protected]>
Co-authored-by: nomick <[email protected]>
Co-authored-by: marshoepial <[email protected]>
Co-authored-by: marshoepial <[email protected]>
Co-authored-by: guylapid <[email protected]>
Co-authored-by: Luca Palmieri <[email protected]>
Co-authored-by: Daniel Faust <[email protected]>
Co-authored-by: Atkins <[email protected]>
Co-authored-by: Montana Low <[email protected]>
Co-authored-by: link2xt <[email protected]>
Co-authored-by: Adam Cigánek <[email protected]>
Co-authored-by: Rafael Epplée <[email protected]>
Co-authored-by: Fredrik Østrem <[email protected]>
Co-authored-by: Altan Özlü <[email protected]>
Co-authored-by: Evan Cameron <[email protected]>
Co-authored-by: David James <[email protected]>
Co-authored-by: David James <[email protected]>
Co-authored-by: Simon Paitrault <[email protected]>
Co-authored-by: Robert Collins <[email protected]>
Co-authored-by: Elise <[email protected]>
Co-authored-by: Emil Gardström <[email protected]>
Co-authored-by: Paolo Barbolini <[email protected]>
Co-authored-by: David Marcin <[email protected]>
Co-authored-by: Montana Low <[email protected]>
Co-authored-by: Ghass Mo <[email protected]>
Co-authored-by: Vlad Frolov <[email protected]>
Co-authored-by: Kohei Suzuki <[email protected]>
Co-authored-by: Andrew Whitehead <[email protected]>
Co-authored-by: Billy Chan <[email protected]>
Co-authored-by: Austin Bonander <[email protected]>
Co-authored-by: Erik <[email protected]>
Co-authored-by: Yerkebulan Tulibergenov <[email protected]>
Co-authored-by: Lucille Blumire <[email protected]>
Co-authored-by: Akira Hayakawa <[email protected]>
Co-authored-by: Daniel Imfeld <[email protected]>
Co-authored-by: meh <[email protected]>
Co-authored-by: Russ Weas <[email protected]>
Co-authored-by: yuyawk <[email protected]>
Co-authored-by: Kirill Mironov <[email protected]>
Co-authored-by: Zbigniew Żołnierowicz <[email protected]>
Co-authored-by: Akira Hayakawa <[email protected]>
Co-authored-by: David Yamnitsky <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants