Update Rust crate sqlx to 0.9 #29

Merged
navicore merged 1 commit from renovate/sqlx-0.x into main 2026-06-01 12:46:50 +00:00
Owner

This PR contains the following updates:

Package Type Update Change
sqlx dependencies minor 0.80.9

Release Notes

launchbadge/sqlx (sqlx)

v0.9.0

Compare Source

Important Announcements
New Github Organization

Shortly after this release is published, the SQLx repository will be transferred to a new GitHub organization:
https://github.com/transact-rs/

This is because SQLx has not been owned or maintained by LaunchBadge, LLC. for a few years now, and has since been
informally transferred to the collective ownership of its principal authors. Moving the repository to a new
organization makes this change more clear, and also allows for potentially inviting outside collaborators.

Cargo.lock Removed from Tracking

The Cargo.lock has been removed from tracking in Git. CI should now always test with the latest versions of
all dependencies by default, alongside our pass that checks with cargo generate-lockfile -Z minimal-versions.

This should eliminate the need for any PRs that update dependencies to also update Cargo.lock or
contend with an endless stream of merge conflicts against it.

N.B. cargo install --locked sqlx-cli will no longer work. However, cargo install sqlx-cli has always
used the latest dependencies by default, ignoring the lockfile, so most users should not be affected. For users
requiring reproducible builds, consider maintaining your own lockfile instead; historically, we only ran cargo update
sporadically, so relying on SQLx's lockfile offered few guarantees anyway.

See the manual page for cargo install for details.

Breaking

As per our MSRV policy, the supported Rust version for this release cycle is 1.94.0.

  • [#​3383]: feat: create sqlx.toml format [[@​abonander]]
    • SQLx and sqlx-cli now support per-crate configuration files (sqlx.toml)
    • New functionality includes, but is not limited to:
      • Rename DATABASE_URL for a crate (for multi-database workspaces)
      • Set global type overrides for the macros (supporting custom types)
      • Rename or relocate the _sqlx_migrations table (for multiple crates using the same database)
      • Set characters to ignore when hashing migrations (e.g. ignore whitespace)
    • More to be implemented in future releases.
    • Enable feature sqlx-toml to use.
    • Guide: see sqlx::_config module in documentation.
    • Reference: [Link]
    • Examples (written for Postgres but can be adapted to other databases; PRs welcome!):
      • Multiple databases using DATABASE_URL renaming and global type overrides: [Link]
      • Multi-tenant database using _sqlx_migrations renaming and multiple schemas: [Link]
      • Force use of chrono when time is enabled (e.g. when using tower-sessions-sqlx-store): [Link]
        • Forcing bigdecimal when rust_decimal is enabled is also shown, but problems with chrono/time are more common.
    • Breaking changes:
      • Significant changes to the Migrate trait
      • sqlx::migrate::resolve_blocking() is now #[doc(hidden)] and thus SemVer-exempt.
  • [#​3486]: fix(logs): Correct spelling of aquired_after_secs tracing field [[@​iamjpotts]]
    • Breaking behavior change: implementations parsing tracing logs from SQLx will need to update the spelling.
  • [#​3495]: feat(postgres): remove lifetime from PgAdvisoryLockGuard [[@​bonsairobo]]
  • [#​3526]: Return &mut Self from the migrator set_ methods [[@​nipunn1313]]
    • Minor breaking change: Migrator::set_ignore_missing and set_locking now return &mut Self instead of &Self
      which may break code in rare circumstances.
  • [#​3541]: Postgres: force generic plan for better nullability inference. [[@​joeydewaal]]
    • Breaking change: may alter the output of the query!() macros for certain queries in Postgres.
  • [#​3613]: fix: RawSql lifetime issues [[@​abonander]]
    • Breaking change: adds DB type parameter to all methods of RawSql
  • [#​3670]: Bump ipnetwork to v0.21.1 [[@​BeauGieskens]]
  • [#​3674]: Implement Decode, Encode and Type for Box, Arc, Cow and Rc [[@​joeydewaal]]
    • Breaking change: impl Decode for Cow now always decodes Cow::Owned, lifetime is unlinked
    • See this discussion for motivation: #​3674 (comment)
  • [#​3723]: Add SqlStr [[@​joeydewaal]]
    • Breaking change: all query*() functions now take impl SqlSafeStr
      which is only implemented for &'static str and AssertSqlSafe.
      For all others, wrap in AssertSqlSafe(<query>).
    • This, along with [#​3960], finally allows returning owned queries as the type will be Query<'static, DB>.
    • SqlSafeStr trait is deliberately similar to std::panic::UnwindSafe,
      serving as a speedbump to warn users about naïvely building queries with format!()
      while allowing a workaround for advanced usage that is easy to spot on code review.
  • [#​3800]: Escape PostgreSQL Options [[@​V02460]]
    • Breaking behavior change: options passed to PgConnectOptions::options() are now automatically escaped.
      Manual escaping of options is no longer necessary and may cause incorrect behavior.
  • [#​3821]: Groundwork for 0.9.0-alpha.1 [[@​abonander]]
    • Increased MSRV to 1.86 and set rust-version
    • Deleted deprecated combination runtime+TLS features (e.g. runtime-tokio-native-tls)
    • Deleted re-export of unstable TransactionManager trait in sqlx.
      • Not technically a breaking change because it's #[doc(hidden)],
        but it will break SeaORM if not proactively fixed.
  • [#​3924]: breaking(mysql): assume all non-binary collations compatible with str [[@​abonander]]
    • Text (or text-like) columns which previously were inferred to be Vec<u8> will be inferred to be String
      (this should ultimately fix more code than it breaks).
    • SET NAMES utf8mb4 COLLATE utf8_general_ci is no longer sent by default; instead, SET NAMES utf8mb4 is sent to
      allow the server to select the appropriate default collation (since this is version- and configuration-dependent).
    • MySqlConnectOptions::charset() and ::collation() now imply ::set_names(true) because they don't do anything otherwise.
    • Setting charset doesn't change what's sent in the Protocol::HandshakeResponse41 packet as that normally only
      matters for error messages before SET NAMES is sent.
      The default collation if set_names = false is utf8mb4_general_ci.
    • See this comment for details.
    • Incidental breaking change: RawSql::fetch_optional() now returns sqlx::Result<Option<DB::Row>>
      instead of sqlx::Result<DB::Row>. Whoops.
  • [#​3928]: breaking(sqlite): libsqlite3-sys versioning, feature flags, safety changes [[@​abonander]]
    • SemVer policy changes: libsqlite3-sys version is now specified using a range.
      The maximum of the range may now be increased in any backwards-compatible release.
      The minimum of the range may only be increased in major releases.
      If you have libsqlite3-sys in your dependencies, Cargo should choose a compatible version automatically.
      If otherwise unconstrained, Cargo should choose the latest version supported.
    • SQLite extension loading (including through the new sqlx-toml feature) is now unsafe.
    • Added new non-default features corresponding to conditionally compiled SQLite APIs:
      • sqlite-deserialize enabling SqliteConnection::serialize() and SqliteConnection::deserialize()
      • sqlite-load-extension enabling SqliteConnectOptions::extension() and ::extension_with_entrypoint()
      • sqlite-unlock-notify enables internal use of sqlite3_unlock_notify()
    • SqliteValue and SqliteValueRef changes:
      • The sqlite3_value* interface reserves the right to be stateful.
        Without protection, any call could theoretically invalidate values previously returned, leading to dangling pointers.
      • SqliteValue is now !Sync and SqliteValueRef is !Send to prevent data races from concurrent accesses.
        • Instead, clone or wrap the SqliteValue in Mutex, or convert the SqliteValueRef to an owned value.
      • SqliteValue and any derived SqliteValueRefs now internally track if that value has been used to decode a
        borrowed &[u8] or &str and errors if it's used to decode any other type.
      • This is not expected to affect the vast majority of usages, which should only decode a single type
        per SqliteValue/SqliteValueRef.
      • See new docs on SqliteValue for details.
  • [#​3949]: Postgres: move PgLTree::from to From<Vec<PgLTreeLabel>> implementation [[@​JerryQ17]]
  • [#​3957]: refactor(sqlite): do not borrow bound values, delete lifetime on SqliteArguments [[@​iamjpotts]]
  • [#​3958]: refactor(any): Remove lifetime parameter from AnyArguments [[@​iamjpotts]]
  • [#​3960]: refactor(core): Remove lifetime parameter from Arguments trait [[@​iamjpotts]]
  • [#​3993]: Unescape PostgreSQL passfile password [[@​V02460]]
    • Previously, .pgpass file handling did not process backslash-escapes in the password part.
      Now it does, which may change what password is sent to the server.
  • [#​4008]: make #[derive(sqlx::Type)] automatically generate impl PgHasArrayType by default for newtype structs [[@​papaj-na-wrotkach]]
    • Manual implementations of PgHasArrayType for newtypes will conflict with the generated one.
      Delete the manual impl or add #[sqlx(no_pg_array)] where conflicts occur.
  • [#​4077]: breaking: make offline optional to allow building without serde [[@​CathalMullan]]
  • [#​4094]: Bump bit-vec to v0.8 [[@​zennozenith]]
  • [#​4142]: feat(mysql): add mysql-rsa feature for non-TLS RSA auth [[@​dertin]]
    • Connections requiring RSA password encryption now need to enable the mysql-rsa feature
      or an error will be generated at runtime. RSA encryption is only used for plaintext (non-TLS) connections.
  • [#​4255]: breaking(any+mysql): correctly convert text and blob types to AnyTypeInfo [[@​abonander]]
Added
Changed
Fixed

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • Between 08:00 AM and 09:59 AM, only on Monday and Thursday (* 8-9 * * 1,4)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [sqlx](https://github.com/launchbadge/sqlx) | dependencies | minor | `0.8` → `0.9` | --- ### Release Notes <details> <summary>launchbadge/sqlx (sqlx)</summary> ### [`v0.9.0`](https://github.com/launchbadge/sqlx/blob/HEAD/CHANGELOG.md#090---2026-05-06) [Compare Source](https://github.com/launchbadge/sqlx/compare/v0.8.6...v0.9.0) ##### Important Announcements ##### New Github Organization Shortly after this release is published, the SQLx repository will be transferred to a new GitHub organization: <https://github.com/transact-rs/> This is because SQLx has not been owned or maintained by LaunchBadge, LLC. for a few years now, and has since been informally transferred to the collective ownership of its principal authors. Moving the repository to a new organization makes this change more clear, and also allows for potentially inviting outside collaborators. ##### `Cargo.lock` Removed from Tracking The `Cargo.lock` has been removed from tracking in Git. CI should now always test with the latest versions of all dependencies by default, alongside our pass that checks with `cargo generate-lockfile -Z minimal-versions`. This should eliminate the need for any PRs that update dependencies to also update `Cargo.lock` or contend with an endless stream of merge conflicts against it. **N.B.** `cargo install --locked sqlx-cli` will no longer work. However, `cargo install sqlx-cli` has *always* used the latest dependencies by default, ignoring the lockfile, so most users should not be affected. For users requiring reproducible builds, consider maintaining your own lockfile instead; historically, we only ran `cargo update` sporadically, so relying on SQLx's lockfile offered few guarantees anyway. See [the manual page for `cargo install`][man-cargo-install] for details. ##### Breaking As per our [MSRV policy](FAQ.md#MSRV), the supported Rust version for this release cycle is [`1.94.0`](https://doc.rust-lang.org/stable/releases.html#version-1940-2026-03-05). - \[[#&#8203;3383]]: feat: create `sqlx.toml` format \[\[[@&#8203;abonander](https://github.com/abonander)]] - SQLx and `sqlx-cli` now support per-crate configuration files (`sqlx.toml`) - New functionality includes, but is not limited to: - Rename `DATABASE_URL` for a crate (for multi-database workspaces) - Set global type overrides for the macros (supporting custom types) - Rename or relocate the `_sqlx_migrations` table (for multiple crates using the same database) - Set characters to ignore when hashing migrations (e.g. ignore whitespace) - More to be implemented in future releases. - Enable feature `sqlx-toml` to use. - `sqlx-cli` has it enabled by default, but `sqlx` does **not**. - Default features of library crates can be hard to completely turn off because of [feature unification], so it's better to keep the default feature set as limited as possible. [This is something we learned the hard way.][preferred-crates] - Guide: see `sqlx::_config` module in documentation. - Reference: \[[Link](sqlx-core/src/config/reference.toml)] - Examples (written for Postgres but can be adapted to other databases; PRs welcome!): - Multiple databases using `DATABASE_URL` renaming and global type overrides: \[[Link](examples/postgres/multi-database)] - Multi-tenant database using `_sqlx_migrations` renaming and multiple schemas: \[[Link](examples/postgres/multi-tenant)] - Force use of `chrono` when `time` is enabled (e.g. when using `tower-sessions-sqlx-store`): \[[Link][preferred-crates]] - Forcing `bigdecimal` when `rust_decimal` is enabled is also shown, but problems with `chrono`/`time` are more common. - **Breaking changes**: - Significant changes to the `Migrate` trait - `sqlx::migrate::resolve_blocking()` is now `#[doc(hidden)]` and thus SemVer-exempt. - \[[#&#8203;3486]]: fix(logs): Correct spelling of aquired\_after\_secs tracing field \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - Breaking behavior change: implementations parsing `tracing` logs from SQLx will need to update the spelling. - \[[#&#8203;3495]]: feat(postgres): remove lifetime from `PgAdvisoryLockGuard` \[\[[@&#8203;bonsairobo](https://github.com/bonsairobo)]] - \[[#&#8203;3526]]: Return \&mut Self from the migrator set\_ methods \[\[[@&#8203;nipunn1313](https://github.com/nipunn1313)]] - Minor breaking change: `Migrator::set_ignore_missing` and `set_locking` now return `&mut Self` instead of `&Self` which may break code in rare circumstances. - \[[#&#8203;3541]]: Postgres: force generic plan for better nullability inference. \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - Breaking change: may alter the output of the `query!()` macros for certain queries in Postgres. - \[[#&#8203;3613]]: fix: `RawSql` lifetime issues \[\[[@&#8203;abonander](https://github.com/abonander)]] - Breaking change: adds `DB` type parameter to all methods of `RawSql` - \[[#&#8203;3670]]: Bump ipnetwork to v0.21.1 \[\[[@&#8203;BeauGieskens](https://github.com/BeauGieskens)]] - \[[#&#8203;3674]]: Implement `Decode`, `Encode` and `Type` for `Box`, `Arc`, `Cow` and `Rc` \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - Breaking change: `impl Decode for Cow` now always decodes `Cow::Owned`, lifetime is unlinked - See this discussion for motivation: [#&#8203;3674 (comment)](https://github.com/launchbadge/sqlx/pull/3674#discussion_r2008611502) - \[[#&#8203;3723]]: Add SqlStr \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - Breaking change: all `query*()` functions now take `impl SqlSafeStr` which is only implemented for `&'static str` and `AssertSqlSafe`. For all others, wrap in `AssertSqlSafe(<query>)`. - This, along with \[[#&#8203;3960]], finally allows returning owned queries as the type will be `Query<'static, DB>`. - `SqlSafeStr` trait is deliberately similar to `std::panic::UnwindSafe`, serving as a speedbump to warn users about naïvely building queries with `format!()` while allowing a workaround for advanced usage that is easy to spot on code review. - \[[#&#8203;3800]]: Escape PostgreSQL Options \[\[[@&#8203;V02460](https://github.com/V02460)]] - Breaking behavior change: options passed to `PgConnectOptions::options()` are now automatically escaped. Manual escaping of options is no longer necessary and may cause incorrect behavior. - \[[#&#8203;3821]]: Groundwork for 0.9.0-alpha.1 \[\[[@&#8203;abonander](https://github.com/abonander)]] - Increased MSRV to 1.86 and set rust-version - Deleted deprecated combination runtime+TLS features (e.g. `runtime-tokio-native-tls`) - Deleted re-export of unstable `TransactionManager` trait in `sqlx`. - Not technically a breaking change because it's `#[doc(hidden)]`, but [it *will* break SeaORM][seaorm-2600] if not proactively fixed. - \[[#&#8203;3924]]: breaking(mysql): assume all non-binary collations compatible with `str` \[\[[@&#8203;abonander](https://github.com/abonander)]] - Text (or text-like) columns which previously were inferred to be `Vec<u8>` will be inferred to be `String` (this should ultimately fix more code than it breaks). - `SET NAMES utf8mb4 COLLATE utf8_general_ci` is no longer sent by default; instead, `SET NAMES utf8mb4` is sent to allow the server to select the appropriate default collation (since this is version- and configuration-dependent). - `MySqlConnectOptions::charset()` and `::collation()` now imply `::set_names(true)` because they don't do anything otherwise. - Setting `charset` doesn't change what's sent in the `Protocol::HandshakeResponse41` packet as that normally only matters for error messages before `SET NAMES` is sent. The default collation if `set_names = false` is `utf8mb4_general_ci`. - See [this comment](https://github.com/launchbadge/sqlx/blob/388c424f486bf20542a8a37d296dbcf86bb6dffd/sqlx-mysql/src/collation.rs#L1-L37) for details. - Incidental breaking change: `RawSql::fetch_optional()` now returns `sqlx::Result<Option<DB::Row>>` instead of `sqlx::Result<DB::Row>`. Whoops. - \[[#&#8203;3928]]: breaking(sqlite): `libsqlite3-sys` versioning, feature flags, safety changes \[\[[@&#8203;abonander](https://github.com/abonander)]] - SemVer policy changes: `libsqlite3-sys` version is now specified using a range. The maximum of the range may now be increased in any backwards-compatible release. The minimum of the range may only be increased in major releases. If you have `libsqlite3-sys` in your dependencies, Cargo should choose a compatible version automatically. If otherwise unconstrained, Cargo should choose the latest version supported. - SQLite extension loading (including through the new `sqlx-toml` feature) is now `unsafe`. - Added new **non-default** features corresponding to conditionally compiled SQLite APIs: - `sqlite-deserialize` enabling `SqliteConnection::serialize()` and `SqliteConnection::deserialize()` - `sqlite-load-extension` enabling `SqliteConnectOptions::extension()` and `::extension_with_entrypoint()` - `sqlite-unlock-notify` enables internal use of `sqlite3_unlock_notify()` - `SqliteValue` and `SqliteValueRef` changes: - The [`sqlite3_value*` interface](https://www.sqlite.org/c3ref/value_blob.html) reserves the right to be stateful. Without protection, any call could theoretically invalidate values previously returned, leading to dangling pointers. - `SqliteValue` is now `!Sync` and `SqliteValueRef` is `!Send` to prevent data races from concurrent accesses. - Instead, clone or wrap the `SqliteValue` in `Mutex`, or convert the `SqliteValueRef` to an owned value. - `SqliteValue` and any derived `SqliteValueRef`s now internally track if that value has been used to decode a borrowed `&[u8]` or `&str` and errors if it's used to decode any other type. - This is not expected to affect the vast majority of usages, which should only decode a single type per `SqliteValue`/`SqliteValueRef`. - See new docs on `SqliteValue` for details. - \[[#&#8203;3949]]: Postgres: move `PgLTree::from` to `From<Vec<PgLTreeLabel>>` implementation \[\[[@&#8203;JerryQ17](https://github.com/JerryQ17)]] - \[[#&#8203;3957]]: refactor(sqlite): do not borrow bound values, delete lifetime on `SqliteArguments` \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3958]]: refactor(any): Remove lifetime parameter from AnyArguments \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3960]]: refactor(core): Remove lifetime parameter from Arguments trait \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3993]]: Unescape PostgreSQL passfile password \[\[[@&#8203;V02460](https://github.com/V02460)]] - Previously, `.pgpass` file handling did not process backslash-escapes in the password part. Now it does, which may change what password is sent to the server. - \[[#&#8203;4008]]: make `#[derive(sqlx::Type)]` automatically generate `impl PgHasArrayType` by default for newtype structs \[\[[@&#8203;papaj-na-wrotkach](https://github.com/papaj-na-wrotkach)]] - Manual implementations of PgHasArrayType for newtypes will conflict with the generated one. Delete the manual impl or add `#[sqlx(no_pg_array)]` where conflicts occur. - \[[#&#8203;4077]]: breaking: make `offline` optional to allow building without `serde` \[\[[@&#8203;CathalMullan](https://github.com/CathalMullan)]] - \[[#&#8203;4094]]: Bump bit-vec to v0.8 \[\[[@&#8203;zennozenith](https://github.com/zennozenith)]] - \[[#&#8203;4142]]: feat(mysql): add mysql-rsa feature for non-TLS RSA auth \[\[[@&#8203;dertin](https://github.com/dertin)]] - Connections requiring RSA password encryption now need to enable the `mysql-rsa` feature or an error will be generated at runtime. RSA encryption is only used for plaintext (non-TLS) connections. - \[[#&#8203;4255]]: breaking(any+mysql): correctly convert text and blob types to `AnyTypeInfo` \[\[[@&#8203;abonander](https://github.com/abonander)]] ##### Added - \[[#&#8203;3641]]: feat(Postgres): support nested domain types \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;3651]]: Add PgBindIter for encoding and use it as the implementation encoding &\[T] \[\[[@&#8203;tylerhawkes](https://github.com/tylerhawkes)]] - \[[#&#8203;3675]]: feat: implement Encode, Decode, Type for `Arc<str>` and `Arc<[u8]>` (and `Rc` equivalents) \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;3791]]: Smol+async global executor 1.80 dev \[\[[@&#8203;martin-kolarik](https://github.com/martin-kolarik)]] - Adds `runtime-smol` and `runtime-async-global-executor` features to replace usages of the deprecated `async-std` crate. - \[[#&#8203;3859]]: Add more JsonRawValue encode/decode impls. \[\[[@&#8203;Dirbaio](https://github.com/Dirbaio)]] - \[[#&#8203;3881]]: CLi: made cli-lib modules publicly available for other crates \[\[[@&#8203;silvestrpredko](https://github.com/silvestrpredko)]] - \[[#&#8203;3889]]: Compile-time support for external drivers \[\[[@&#8203;bobozaur](https://github.com/bobozaur)]] - \[[#&#8203;3917]]: feat(sqlx.toml): support SQLite extensions in macros and sqlx-cli \[\[[@&#8203;djarb](https://github.com/djarb)]] - \[[#&#8203;3918]]: Feature: Add exclusion violation error kind \[\[[@&#8203;barskern](https://github.com/barskern)]] - \[[#&#8203;3971]]: Allow single-field named structs to be transparent \[\[[@&#8203;Xiretza](https://github.com/Xiretza)]] - \[[#&#8203;4015]]: feat(sqlite): `no_tx` migration support \[\[[@&#8203;AlexTMjugador](https://github.com/AlexTMjugador)]] - \[[#&#8203;4020]]: Add `Migrator::with_migrations()` constructor \[\[[@&#8203;xb284524239](https://github.com/xb284524239)]] - \[[#&#8203;3846]]: Add the possibility to skip migrations \[\[[@&#8203;Dosenpfand](https://github.com/Dosenpfand)]] - \[[#&#8203;4107]]: Add SQLite extension entrypoint config to `sqlx.toml`, update SQLite extension example \[\[[@&#8203;supleed2](https://github.com/supleed2)]] - \[[#&#8203;4118]]: \[postgres] Display line number in error message \[\[[@&#8203;mousetail](https://github.com/mousetail)]] - \[[#&#8203;4123]]: feat: add `Json::into_inner()` \[\[[@&#8203;chrxn1c](https://github.com/chrxn1c)]] - \[[#&#8203;4153]]: Add on unimplemented diagnostic to `SqlStr` \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;4167]]: add sqlite serialize/deserialize example \[\[[@&#8203;mattrighetti](https://github.com/mattrighetti)]] - \[[#&#8203;4228]]: sqlx-postgres: Make `PgNotification` struct clone \[\[[@&#8203;michaelvanstraten](https://github.com/michaelvanstraten)]] ##### Changed - \[[#&#8203;3525]]: Remove unnecessary boxfutures \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;3867]]: sqlx-postgres: Bump etcetera to 0.10.0 \[\[[@&#8203;miniduikboot](https://github.com/miniduikboot)]] - \[[#&#8203;3709]]: chore: replace once\_cell `OnceCell`/`Lazy` with std `OnceLock`/`LazyLock` \[\[[@&#8203;paolobarbolini](https://github.com/paolobarbolini)]] - \[[#&#8203;3890]]: feat: Unify `Debug` implementations across `PgRow`, `MySqlRow` and `SqliteRow` \[\[[@&#8203;davidcornu](https://github.com/davidcornu)]] - \[[#&#8203;3911]]: chore: upgrade async-io to v2.4.1 \[\[[@&#8203;zebrapurring](https://github.com/zebrapurring)]] - \[[#&#8203;3938]]: Move `QueryLogger` back \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;3956]]: chore(sqlite): Remove unused test of removed git2 feature \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3962]]: Give SQLX\_OFFLINE\_DIR from environment precedence in macros \[\[[@&#8203;psionic-k](https://github.com/psionic-k)]] - \[[#&#8203;3968]]: chore(ci): Add timeouts to ci jobs \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;4002]]: sqlx-postgres(tests): cleanup 2 unit tests. \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;4022]]: refactor: tweaks after [#&#8203;3791](https://github.com/launchbadge/sqlx/issues/3791) \[\[[@&#8203;abonander](https://github.com/abonander)]] - \[[#&#8203;4257]]: Prefer to give real data to `.bind()` in `README.md` \[\[[@&#8203;sobolevn](https://github.com/sobolevn)]] - \[[#&#8203;4042]]: Update to webpki-roots 1 \[\[[@&#8203;tottoto](https://github.com/tottoto)]] - \[[#&#8203;4072]]: chore: update hashlink to v0.11.0 \[\[[@&#8203;anmolitor](https://github.com/anmolitor)]] - \[[#&#8203;4143]]: Bump whoami to v2 \[\[[@&#8203;tisonkun](https://github.com/tisonkun)]] - \[[#&#8203;4161]]: sqlx-sqlite: relax libsqlite3-sys constraint to allow 0.36.x \[\[[@&#8203;darioAnongba](https://github.com/darioAnongba)]] - \[[#&#8203;4173]]: ci: check direct minimal versions \[\[[@&#8203;ricochet](https://github.com/ricochet)]] - Note: reverted in 0.9.0 release but still listed for contributor credit. See end of PR thread for details. - \[[#&#8203;4189]]: Bump flume to 0.12.0 \[\[[@&#8203;opoplawski](https://github.com/opoplawski)]] - \[[#&#8203;4223]]: test(sqlite): add regression test for ORDER BY + LIMIT nullability ([#&#8203;4147](https://github.com/launchbadge/sqlx/issues/4147)) \[\[[@&#8203;barry3406](https://github.com/barry3406)]] - \[[#&#8203;4230]]: chore: Update to cargo\_metadata 0.23 \[\[[@&#8203;tottoto](https://github.com/tottoto)]] - \[[#&#8203;4233]]: Change reference to dotenvy \[\[[@&#8203;graemer957](https://github.com/graemer957)]] - \[[#&#8203;4235]]: chore: Update to validator 0.20 \[\[[@&#8203;tottoto](https://github.com/tottoto)]] - \[[#&#8203;4253]]: chore: update example to axum 0.8 \[\[[@&#8203;tottoto](https://github.com/tottoto)]] - Release PR: - Upgraded all Rust-Crypto crates, `rand` - Upgraded `etcetera` to `0.11.0` - Increased max of `libsqlite3-sys` version range to `<0.38.0` ##### Fixed - \[[#&#8203;3840]]: Fix docs.rs build of sqlx-sqlite \[\[[@&#8203;gferon](https://github.com/gferon)]] - \[[#&#8203;3848]]: fix(macros): don't mutate environment variables \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;3856]]: fix(macros): slightly improve unsupported type error message \[\[[@&#8203;dyc3](https://github.com/dyc3)]] - \[[#&#8203;3857]]: fix(mysql): validate parameter count for prepared statements \[\[[@&#8203;cvzx](https://github.com/cvzx)]] - \[[#&#8203;3861]]: Fix NoHostnameTlsVerifier for rustls 0.23.24 and above \[\[[@&#8203;elichai](https://github.com/elichai)]] - \[[#&#8203;3863]]: Use unnamed statement in pg when not persistent \[\[[@&#8203;ThomWright](https://github.com/ThomWright)]] - \[[#&#8203;3874]]: Further reduce dependency on `futures` and `futures-util` \[\[[@&#8203;paolobarbolini](https://github.com/paolobarbolini)]] - \[[#&#8203;3886]]: fix: use Executor::fetch in QueryAs::fetch \[\[[@&#8203;bobozaur](https://github.com/bobozaur)]] - \[[#&#8203;3910]]: feat(ok): add correct handling of ok packets in MYSQL implementation \[\[[@&#8203;0xfourzerofour](https://github.com/0xfourzerofour)]] - \[[#&#8203;3914]]: fix: regenerate test certificates \[\[[@&#8203;abonander](https://github.com/abonander)]] - \[[#&#8203;3915]]: fix: spec\_error is used by try\_from derive \[\[[@&#8203;saiintbrisson](https://github.com/saiintbrisson)]] - \[[#&#8203;3919]]: fix\[sqlx-postgres]: do a checked\_mul to prevent panic'ing \[\[[@&#8203;nhatcher-frequenz](https://github.com/nhatcher-frequenz)]] - \[[#&#8203;3923]]: sqlx-mysql: Fix bug in cleanup test db's. \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;3950]]: chore: Fix warnings for custom postgres\_## cfg flags \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3952]]: `Pool.close`: close all connections before returning \[\[[@&#8203;jpmelos](https://github.com/jpmelos)]] - \[[#&#8203;3975]]: fix documentation for rustls native root certificates \[\[[@&#8203;2ndDerivative](https://github.com/2ndDerivative)]] - \[[#&#8203;3977]]: refactor(ci): Use separate job for postgres ssl auth tests \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3980]]: Correctly `ROLLBACK` transaction when dropped during `BEGIN`. \[\[[@&#8203;kevincox](https://github.com/kevincox)]] - \[[#&#8203;3981]]: SQLite: fix transaction level accounting with bad custom command. \[\[[@&#8203;kevincox](https://github.com/kevincox)]] - \[[#&#8203;3986]]: chore(core): Fix docstring for Query::try\_bind \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3987]]: chore(deps): Resolve deprecation warning for chrono Date and ymd methods \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3988]]: refactor(sqlite): Resolve duplicate test target warning for macros.rs \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3989]]: chore(deps): Set default-features=false on sqlx in workspace.dependencies \[\[[@&#8203;iamjpotts](https://github.com/iamjpotts)]] - \[[#&#8203;3991]]: fix(sqlite): regression when decoding nulls \[\[[@&#8203;abonander](https://github.com/abonander)]] - \[[#&#8203;4006]]: PostgreSQL SASL – run SHA256 in a blocking executor \[\[[@&#8203;ThomWright](https://github.com/ThomWright)]] - \[[#&#8203;4007]]: fix(compose): use OS-assigned ports for all conatiners \[\[[@&#8203;papaj-na-wrotkach](https://github.com/papaj-na-wrotkach)]] - \[[#&#8203;4009]]: Drop cached db connections in macros upon hitting an error \[\[[@&#8203;swlynch99](https://github.com/swlynch99)]] - \[[#&#8203;4024]]: fix(sqlite) Migrate revert with no-transaction \[\[[@&#8203;Dosenpfand](https://github.com/Dosenpfand)]] - \[[#&#8203;4027]]: native tls handshake: build TlsConnector in blocking threadpool \[\[[@&#8203;daviduebler](https://github.com/daviduebler)]] - \[[#&#8203;4053]]: fix(macros): smarter `.env` loading, caching, and invalidation \[\[[@&#8203;abonander](https://github.com/abonander)]] - Additional credit to \[\[[@&#8203;AlexTMjugador](https://github.com/AlexTMjugador)]] (\[[#&#8203;4018]]) and \[\[[@&#8203;Diggsey](https://github.com/Diggsey)]] (\[[#&#8203;4039]]) for their proposed solutions which served as a useful comparison. - \[[#&#8203;4068]]: Fix typo in migration example from 'uesrs' to 'users' \[\[[@&#8203;squidpickles](https://github.com/squidpickles)]] - \[[#&#8203;4069]]: fix some spelling issues \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;4086]]: fix(mysql): Work around for Issue [#&#8203;2206](https://github.com/launchbadge/sqlx/issues/2206) (ColumnNotFound error when querying) \[\[[@&#8203;duelafn](https://github.com/duelafn)]] - \[[#&#8203;4088]]: (Fix) Handle nullability of SQLite rowid alias columns \[\[[@&#8203;Lege19](https://github.com/Lege19)]] - \[[#&#8203;4100]]: postgres: update pgpass path on windows \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;4134]]: fix CI: replace removed macOS runner, deprecated use of `Command::cargo_bin()` \[\[[@&#8203;abonander](https://github.com/abonander)]] - \[[#&#8203;4136]]: Ensure Deterministic Migration Order \[\[[@&#8203;aoengin](https://github.com/aoengin)]] - \[[#&#8203;4158]]: Fix panic in JSONB decoder on invalid version byte \[\[[@&#8203;jrey8343](https://github.com/jrey8343)]] - \[[#&#8203;4165]]: sqlx-postgres: fix correct operator precedence in byte length check \[\[[@&#8203;cuiweixie](https://github.com/cuiweixie)]] - \[[#&#8203;4171]]: fix(postgres): remove home crate in favor of std::env::home\_dir \[\[[@&#8203;ricochet](https://github.com/ricochet)]] - \[[#&#8203;4172]]: fix(sqlx-cli): bump openssl minimum to 0.10.46 \[\[[@&#8203;ricochet](https://github.com/ricochet)]] - \[[#&#8203;4176]]: fix(mysql): return error instead of panic on truncated OK packet \[\[[@&#8203;cvzx](https://github.com/cvzx)]] - \[[#&#8203;4199]]: fix(postgres): make advisory lock cancel safe \[\[[@&#8203;joeydewaal](https://github.com/joeydewaal)]] - \[[#&#8203;4201]]: Fix SCRAM password `SASLprep` \[\[[@&#8203;var4yn](https://github.com/var4yn)]] - \[[#&#8203;4202]]: fix: replace from\_utf8\_unchecked with from\_utf8\_lossy in SqliteError \[\[[@&#8203;joaquinhuigomez](https://github.com/joaquinhuigomez)]] - \[[#&#8203;4203]]: fix: use sqlite3\_value\_text for REGEXP to match SQLite coercion \[\[[@&#8203;joaquinhuigomez](https://github.com/joaquinhuigomez)]] - \[[#&#8203;4219]]: sqlite: lossily coerce invalid UTF-8 in custom collation callback \[\[[@&#8203;joaquinhuigomez](https://github.com/joaquinhuigomez)]] - \[[#&#8203;4221]]: fix: replace `from_utf8_unchecked` with `from_utf8` in SQLite column name handling \[\[[@&#8203;barry3406](https://github.com/barry3406)]] - \[[#&#8203;4226]]: fix(postgres): use non-prepared statements for metadata queries \[\[[@&#8203;abonander](https://github.com/abonander)]] - \[[#&#8203;4227]]: fix(macros-core): update unstable proc\_macro APIs for recent nightly \[\[[@&#8203;barry3406](https://github.com/barry3406)]] - \[[#&#8203;4234]]: fix: Use correct path in error when failing to create tmp dir in prepare \[\[[@&#8203;Miesvanderlippe](https://github.com/Miesvanderlippe)]] - \[[#&#8203;4245]]: fix(mysql): repair caching\_sha2\_password fast-auth path \[\[[@&#8203;altmannmarcelo](https://github.com/altmannmarcelo)]] - \[[#&#8203;4251]]: fix(tls): potential deadlock in `StdSocket::poll_ready()` \[\[[@&#8203;abonander](https://github.com/abonander)]] [seaorm-2600]: https://github.com/SeaQL/sea-orm/issues/2600 [feature unification]: https://doc.rust-lang.org/cargo/reference/features.html#feature-unification [preferred-crates]: examples/postgres/preferred-crates [man-cargo-install]: https://doc.rust-lang.org/cargo/commands/cargo-install.html#dealing-with-the-lockfile [#&#8203;3821]: https://github.com/launchbadge/sqlx/pull/3821 [#&#8203;3383]: https://github.com/launchbadge/sqlx/pull/3383 [#&#8203;3486]: https://github.com/launchbadge/sqlx/pull/3486 [#&#8203;3495]: https://github.com/launchbadge/sqlx/pull/3495 [#&#8203;3525]: https://github.com/launchbadge/sqlx/pull/3525 [#&#8203;3526]: https://github.com/launchbadge/sqlx/pull/3526 [#&#8203;3541]: https://github.com/launchbadge/sqlx/pull/3541 [#&#8203;3613]: https://github.com/launchbadge/sqlx/pull/3613 [#&#8203;3641]: https://github.com/launchbadge/sqlx/pull/3641 [#&#8203;3651]: https://github.com/launchbadge/sqlx/pull/3651 [#&#8203;3670]: https://github.com/launchbadge/sqlx/pull/3670 [#&#8203;3674]: https://github.com/launchbadge/sqlx/pull/3674 [#&#8203;3675]: https://github.com/launchbadge/sqlx/pull/3675 [#&#8203;3709]: https://github.com/launchbadge/sqlx/pull/3709 [#&#8203;3723]: https://github.com/launchbadge/sqlx/pull/3723 [#&#8203;3791]: https://github.com/launchbadge/sqlx/pull/3791 [#&#8203;3800]: https://github.com/launchbadge/sqlx/pull/3800 [#&#8203;3821]: https://github.com/launchbadge/sqlx/pull/3821 [#&#8203;3840]: https://github.com/launchbadge/sqlx/pull/3840 [#&#8203;3848]: https://github.com/launchbadge/sqlx/pull/3848 [#&#8203;3856]: https://github.com/launchbadge/sqlx/pull/3856 [#&#8203;3857]: https://github.com/launchbadge/sqlx/pull/3857 [#&#8203;3859]: https://github.com/launchbadge/sqlx/pull/3859 [#&#8203;3861]: https://github.com/launchbadge/sqlx/pull/3861 [#&#8203;3863]: https://github.com/launchbadge/sqlx/pull/3863 [#&#8203;3867]: https://github.com/launchbadge/sqlx/pull/3867 [#&#8203;3874]: https://github.com/launchbadge/sqlx/pull/3874 [#&#8203;3881]: https://github.com/launchbadge/sqlx/pull/3881 [#&#8203;3886]: https://github.com/launchbadge/sqlx/pull/3886 [#&#8203;3889]: https://github.com/launchbadge/sqlx/pull/3889 [#&#8203;3890]: https://github.com/launchbadge/sqlx/pull/3890 [#&#8203;3910]: https://github.com/launchbadge/sqlx/pull/3910 [#&#8203;3911]: https://github.com/launchbadge/sqlx/pull/3911 [#&#8203;3914]: https://github.com/launchbadge/sqlx/pull/3914 [#&#8203;3915]: https://github.com/launchbadge/sqlx/pull/3915 [#&#8203;3917]: https://github.com/launchbadge/sqlx/pull/3917 [#&#8203;3918]: https://github.com/launchbadge/sqlx/pull/3918 [#&#8203;3919]: https://github.com/launchbadge/sqlx/pull/3919 [#&#8203;3923]: https://github.com/launchbadge/sqlx/pull/3923 [#&#8203;3924]: https://github.com/launchbadge/sqlx/pull/3924 [#&#8203;3928]: https://github.com/launchbadge/sqlx/pull/3928 [#&#8203;3938]: https://github.com/launchbadge/sqlx/pull/3938 [#&#8203;3949]: https://github.com/launchbadge/sqlx/pull/3949 [#&#8203;3950]: https://github.com/launchbadge/sqlx/pull/3950 [#&#8203;3952]: https://github.com/launchbadge/sqlx/pull/3952 [#&#8203;3956]: https://github.com/launchbadge/sqlx/pull/3956 [#&#8203;3957]: https://github.com/launchbadge/sqlx/pull/3957 [#&#8203;3958]: https://github.com/launchbadge/sqlx/pull/3958 [#&#8203;3960]: https://github.com/launchbadge/sqlx/pull/3960 [#&#8203;3962]: https://github.com/launchbadge/sqlx/pull/3962 [#&#8203;3968]: https://github.com/launchbadge/sqlx/pull/3968 [#&#8203;3971]: https://github.com/launchbadge/sqlx/pull/3971 [#&#8203;3975]: https://github.com/launchbadge/sqlx/pull/3975 [#&#8203;3977]: https://github.com/launchbadge/sqlx/pull/3977 [#&#8203;3980]: https://github.com/launchbadge/sqlx/pull/3980 [#&#8203;3981]: https://github.com/launchbadge/sqlx/pull/3981 [#&#8203;3986]: https://github.com/launchbadge/sqlx/pull/3986 [#&#8203;3987]: https://github.com/launchbadge/sqlx/pull/3987 [#&#8203;3988]: https://github.com/launchbadge/sqlx/pull/3988 [#&#8203;3989]: https://github.com/launchbadge/sqlx/pull/3989 [#&#8203;3991]: https://github.com/launchbadge/sqlx/pull/3991 [#&#8203;4002]: https://github.com/launchbadge/sqlx/pull/4002 [#&#8203;4006]: https://github.com/launchbadge/sqlx/pull/4006 [#&#8203;4007]: https://github.com/launchbadge/sqlx/pull/4007 [#&#8203;4008]: https://github.com/launchbadge/sqlx/pull/4008 [#&#8203;4009]: https://github.com/launchbadge/sqlx/pull/4009 [#&#8203;4015]: https://github.com/launchbadge/sqlx/pull/4015 [#&#8203;4018]: https://github.com/launchbadge/sqlx/pull/4018 [#&#8203;4020]: https://github.com/launchbadge/sqlx/pull/4020 [#&#8203;4022]: https://github.com/launchbadge/sqlx/pull/4022 [#&#8203;4024]: https://github.com/launchbadge/sqlx/pull/4024 [#&#8203;4027]: https://github.com/launchbadge/sqlx/pull/4027 [#&#8203;4039]: https://github.com/launchbadge/sqlx/pull/4039 [#&#8203;4053]: https://github.com/launchbadge/sqlx/pull/4053 [#&#8203;3846]: https://github.com/launchbadge/sqlx/pull/3846 [#&#8203;3993]: https://github.com/launchbadge/sqlx/pull/3993 [#&#8203;4042]: https://github.com/launchbadge/sqlx/pull/4042 [#&#8203;4068]: https://github.com/launchbadge/sqlx/pull/4068 [#&#8203;4069]: https://github.com/launchbadge/sqlx/pull/4069 [#&#8203;4072]: https://github.com/launchbadge/sqlx/pull/4072 [#&#8203;4077]: https://github.com/launchbadge/sqlx/pull/4077 [#&#8203;4086]: https://github.com/launchbadge/sqlx/pull/4086 [#&#8203;4088]: https://github.com/launchbadge/sqlx/pull/4088 [#&#8203;4094]: https://github.com/launchbadge/sqlx/pull/4094 [#&#8203;4100]: https://github.com/launchbadge/sqlx/pull/4100 [#&#8203;4107]: https://github.com/launchbadge/sqlx/pull/4107 [#&#8203;4118]: https://github.com/launchbadge/sqlx/pull/4118 [#&#8203;4123]: https://github.com/launchbadge/sqlx/pull/4123 [#&#8203;4134]: https://github.com/launchbadge/sqlx/pull/4134 [#&#8203;4136]: https://github.com/launchbadge/sqlx/pull/4136 [#&#8203;4142]: https://github.com/launchbadge/sqlx/pull/4142 [#&#8203;4143]: https://github.com/launchbadge/sqlx/pull/4143 [#&#8203;4153]: https://github.com/launchbadge/sqlx/pull/4153 [#&#8203;4158]: https://github.com/launchbadge/sqlx/pull/4158 [#&#8203;4161]: https://github.com/launchbadge/sqlx/pull/4161 [#&#8203;4165]: https://github.com/launchbadge/sqlx/pull/4165 [#&#8203;4167]: https://github.com/launchbadge/sqlx/pull/4167 [#&#8203;4171]: https://github.com/launchbadge/sqlx/pull/4171 [#&#8203;4172]: https://github.com/launchbadge/sqlx/pull/4172 [#&#8203;4173]: https://github.com/launchbadge/sqlx/pull/4173 [#&#8203;4176]: https://github.com/launchbadge/sqlx/pull/4176 [#&#8203;4189]: https://github.com/launchbadge/sqlx/pull/4189 [#&#8203;4199]: https://github.com/launchbadge/sqlx/pull/4199 [#&#8203;4201]: https://github.com/launchbadge/sqlx/pull/4201 [#&#8203;4202]: https://github.com/launchbadge/sqlx/pull/4202 [#&#8203;4203]: https://github.com/launchbadge/sqlx/pull/4203 [#&#8203;4219]: https://github.com/launchbadge/sqlx/pull/4219 [#&#8203;4221]: https://github.com/launchbadge/sqlx/pull/4221 [#&#8203;4223]: https://github.com/launchbadge/sqlx/pull/4223 [#&#8203;4226]: https://github.com/launchbadge/sqlx/pull/4226 [#&#8203;4227]: https://github.com/launchbadge/sqlx/pull/4227 [#&#8203;4228]: https://github.com/launchbadge/sqlx/pull/4228 [#&#8203;4230]: https://github.com/launchbadge/sqlx/pull/4230 [#&#8203;4233]: https://github.com/launchbadge/sqlx/pull/4233 [#&#8203;4234]: https://github.com/launchbadge/sqlx/pull/4234 [#&#8203;4235]: https://github.com/launchbadge/sqlx/pull/4235 [#&#8203;4245]: https://github.com/launchbadge/sqlx/pull/4245 [#&#8203;4251]: https://github.com/launchbadge/sqlx/pull/4251 [#&#8203;4253]: https://github.com/launchbadge/sqlx/pull/4253 [#&#8203;4255]: https://github.com/launchbadge/sqlx/pull/4255 [#&#8203;4257]: https://github.com/launchbadge/sqlx/pull/4257 </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - Between 08:00 AM and 09:59 AM, only on Monday and Thursday (`* 8-9 * * 1,4`) - Automerge - At any time (no schedule defined) 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xODYuMSIsInVwZGF0ZWRJblZlciI6IjQzLjE4Ni4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZSIsInJ1c3QiXX0=-->
Update Rust crate sqlx to 0.9
All checks were successful
CI / ci (pull_request) Successful in 2m6s
8e71dd7f65
navicore deleted branch renovate/sqlx-0.x 2026-06-01 12:46:51 +00:00
Sign in to join this conversation.
No description provided.