{"ecosystem":"cargo","package":"sqlx","from_version":null,"to_version":null,"changes":[{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"behavior","description":"Breaking behavior change: implementations parsing `tracing` logs from SQLx will need to update the spelling.","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"behavior","description":"Default features of library crates can be hard to completely turn off because of [feature unification],","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"behavior","description":"`sqlx-cli` has it enabled by default, but `sqlx` does **not**.","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"More to be implemented in future releases.","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Enable feature `sqlx-toml` to use.","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"New functionality includes, but is not limited to:","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Set global type overrides for the macros (supporting custom types)","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Set characters to ignore when hashing migrations (e.g. ignore whitespace)","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Significant changes to the `Migrate` trait","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"`sqlx::migrate::resolve_blocking()` is now `#[doc(hidden)]` and thus SemVer-exempt.","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"[[#3486]]: fix(logs): Correct spelling of aquired_after_secs tracing field [[@iamjpotts]]","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"SQLx and `sqlx-cli` now support per-crate configuration files (`sqlx.toml`)","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"[[#3383]]: feat: create `sqlx.toml` format [[@abonander]]","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Guide: see `sqlx::_config` module in documentation.","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Reference: [[Link](sqlx-core/src/config/reference.toml)]","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Examples (written for Postgres but can be adapted to other databases; PRs welcome!):","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Multiple databases using `DATABASE_URL` renaming and global type overrides: [[Link](examples/postgres/multi-database)]","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Multi-tenant database using `_sqlx_migrations` renaming and multiple schemas: [[Link](examples/postgres/multi-tenant)]","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Force use of `chrono` when `time` is enabled (e.g. when using `tower-sessions-sqlx-store`): [[Link][preferred-crates]]","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"Forcing `bigdecimal` when `rust_decimal` is enabled is also shown, but problems with `chrono`/`time` are more common.","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"breaking","description":"**Breaking changes**:","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"removed","description":"[[#3495]]: feat(postgres): remove lifetime from `PgAdvisoryLockGuard` [[@bonsairobo]]","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"renamed","description":"Rename or relocate the `_sqlx_migrations` table (for multiple crates using the same database)","migration_hint":null},{"from_version":"0.8.6","to_version":"0.9.0-alpha.1","change_type":"renamed","description":"Rename `DATABASE_URL` for a crate (for multi-database workspaces)","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"api","description":"It is not expected to receive any breaking changes for the 0.8.x release, but is not designed as a public API.","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3389]]: fix(cli): typo in error for required DB URL [[@ods]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3421]]: correct spelling of `MySqlConnectOptions::no_engine_substitution()` [[@kolinfluence]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3376]]: doc: hide `spec_error` module [[@abonander]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"This is a helper module for the macros and was not meant to be exposed.","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3382]]: feat: bumped to `libsqlite3-sys=0.30.1` to support sqlite 3.46 [[@CommanderStorm]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3385]]: chore(examples):Migrated the pg-chat example to ratatui [[@CommanderStorm]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3399]]: Upgrade to rustls 0.23 [[@djc]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"RusTLS now has pluggable cryptography providers: `ring` (the existing implementation),","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"The existing features activating RusTLS (`runtime-tokio-rustls`, `runtime-async-std-rustls`, `tls-rustls`)","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"Switch to the `tls-rustls-aws-lc-rs` feature to use the `aws-lc-rs` provider.","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"If using `runtime-tokio-rustls` or `runtime-async-std-rustls`,","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"See the RusTLS README for more details: <https://github.com/rustls/rustls?tab=readme-ov-file#cryptography-providers>","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#2786]]: fix(sqlx-cli): do not clean sqlx during prepare [[@cycraig]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3354]]: sqlite: fix inconsistent read-after-write [[@ckampfe]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3371]]: Fix encoding and decoding of MySQL enums in `sqlx::Type` [[@alu]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3374]]: fix: usage of `node12` in `SQLx` action [[@hamirmahal]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3380]]: chore: replace structopt with clap in examples [[@tottoto]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3386]]: fix(dependencys):bumped cargo_metadata to `v0.18.1` to avoid yanked `v0.14.3` [[@CommanderStorm]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3417]]: Update version to 0.8 in README [[@soucosmo]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"breaking","description":"[[#3441]]: fix: audit protocol handling [[@abonander]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"deprecated","description":"Deprecates `MySqlConnectOptions::no_engine_subsitution()` (oops) in favor of the correctly spelled version.","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"deprecated","description":"[[#3384]]: chore(tests): fixed deprecation warnings [[@CommanderStorm]]","migration_hint":null},{"from_version":"0.8.0","to_version":"0.8.1","change_type":"removed","description":"[[#3381]]: Fix CI after Rust 1.80, remove dead feature references [[@abonander]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"api","description":"[[#2973]]: Generic Associated Types in Database, replacing HasValueRef, HasArguments, HasStatement [[@nitn3lav]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#2736]]: Fix describe on PostgreSQL views with rules [[@tsing]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"Potentially breaking: nullability inference changes for Postgres.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#2869]]: Implement PgHasArrayType for all references [[@tylerhawkes]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"Conflicts with existing manual implementations.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#2940]]: fix: Decode and Encode derives (#1031) [[@benluelo]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"Changes lifetime obligations for field types.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#3064]]: Sqlite explain graph [[@tyrelr]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"Potentially breaking: nullability inference changes for SQLite.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#3123]]: Reorder attrs in sqlx::test macro [[@bobozaur]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"Potentially breaking: attributes on `#[sqlx::test]` usages are applied in the correct order now.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#3126]]: Make Encode return a result [[@FSMaxB]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#3130]]: Add version information for failed cli migration (#3129) [[@FlakM]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"Breaking changes to `MigrateError`.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#3181]]: feat: no tx migration [[@cleverjam]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"(Postgres only) migrations that should not run in a transaction can be flagged by adding `-- no-transaction` to the beginning.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"Breaking change: added field to `Migration`","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#3184]]: [BREAKING} fix(sqlite): always use `i64` as intermediate when decoding [[@abonander]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"integer decoding will now loudly error on overflow instead of silently truncating.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"some usages of the query!() macros might change an i32 to an i64.","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#3252]]: fix `#[derive(sqlx::Type)]` in Postgres [[@abonander]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#2697]]: fix(macros): only enable chrono when time is disabled [[@saiintbrisson]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"breaking","description":"[[#2482]]: chore: bump syn to 2.0 [[@saiintbrisson]]","migration_hint":null},{"from_version":"0.7.4","to_version":"0.8.0","change_type":"removed","description":"Deprecated type ascription syntax in the query macros was removed.","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"behavior","description":"[[#2605]]: Implement Default for QueryBuilder [[@Xydez]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2580]]: Update README.md now that 0.7.0 is no longer in alpha [[@saolof]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2551]]: Introduce build_query_scalar for QueryBuilder [[@iamquang95]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2616]]: feat(sqlx-core): add table function to database error [[@saiintbrisson]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2619]]: feat: allow opt-out of `PgHasArrayType` with `#[derive(sqlx::Type)]` [[@abonander]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"TL;DR: if you're getting errors from `#[derive(sqlx::Type)]` with `#[sqlx(transparent)]`","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2566]]: improve docs about migration files [[@jnnnnn]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2576]]: Major Version Update clap to 4.0 [[@titaniumtraveler]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2597]]: Bump webpki-roots to v0.24 [[@paolobarbolini]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2603]]: docs(changelog): be more verbose about offline mode breaking change [[@mrl5]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2553]]: Implement `Clone` for `PoolOptions` manually (#2548) [[@alilleybrinker]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2585]]: Fix for Issue #2549 - cannot use feature \"rust_decimal\" without also using \"bigdecimal\" [[@deneut]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2586]]: Fix optional dependency on sqlx-macros [[@kitterion]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2593]]: Correct mention of the `tls-native-tls` in the documentation. [[@denschub]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2613]]: Fix readme.md to reduce confusion about optional features (decimal->rust_decimal) [[@vabka]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"breaking","description":"[[#2620]]: fix(sqlite/any): encode bool as integer [[@saiintbrisson]]","migration_hint":null},{"from_version":"0.7.0","to_version":"0.7.1","change_type":"removed","description":"[[#2599]]: Remove incorrect CAST in test database cleanup for MySQL. [[@fd]]","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"behavior","description":"`AnyDriver` and `AnyConnection` now require either `sqlx::any::install_drivers()` or `sqlx::any::install_default_drivers()` to be called at some point during the process' lifetime before the first connection is made, as the set of possible drivers is now determined at runtime. This was determined to be the least painful way to provide knowledge of database drivers to `Any` without them being hardcoded.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"[[#2109]]: feat: better database errors [[@saiintbrisson]]","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"[[#1984]]: Sqlite EXPLAIN type inference improvements [[@rongcuid]]","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"These cannot be blanket impls as it triggers an overflow in the compiler due to the lack of lazy normalization, and","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"We're expecting to do another major refactor of traits to incorporate generic associated types (GAT).","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"[[#2132]]: fix: use owned Builder pattern for ConnectOptions [[@ar3s3ru]]","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"Alongside this upgrade, we are now considering the linkage to `libsqlite3-sys` to be **semver-exempt**,","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"The fields of `Migrator` are now `#[doc(hidden)]` and semver-exempt; they weren't meant to be public.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"[[#2039]]: Break drivers out into separate crates, clean up some technical debt [[@abonander]]","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"[[#2094]]: Update libsqlite3-sys to 0.25.1 [[@penberg]]","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"To fix, simply replace the `runtime-actix-*` feature with its `runtime-tokio-*` equivalent.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"[[#1946]]: Fix compile time verification performance regression for sqlite [[@liningpan]]","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"[[#1960]]: Fix sqlite update return and order by type inference [[@tyrelr]]","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"To fix this breakage, simply add a dereference where an `impl Executor` is expected, as they both dereference to the inner connection type which will still implement it:","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"`&mut transaction` -> `&mut *transaction`","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"breaking","description":"`&mut connection` -> `&mut *connection`","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"removed","description":"The `runtime-actix-*` features have been deleted. They were previously changed to be aliases of their `runtime-tokio-*` counterparts for backwards compatibility reasons, but their continued existence is misleading as SQLx has no special knowledge of Actix anymore.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"removed","description":"The `AnyEncode` trait has been removed.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"removed","description":"The `mssql` feature and associated database driver has been deleted from the source tree. It will return as part of our planned SQLx Pro offering as a from-scratch rewrite with extra features (such as TLS) and type integrations that were previously missing.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"removed","description":"All deprecated items have been removed.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"removed","description":"The `offline` feature has been removed from the `sqlx` facade crate and is enabled unconditionally as most users are expected to have enabled it anyway and disabling it doesn't seem to appreciably affect compile times.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"removed","description":"The `git2` feature has been removed. This was a requested integration from a while ago that over time made less and less sense to be part of SQLx itself. We have to be careful with the crates we add to our public API as each one introduces yet another semver hazard. The expected replacement is to make `#[derive(sqlx::Type)]` useful enough that users can write wrapper types for whatever they want to use without SQLx needing to be specifically aware of it.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"removed","description":"The `Executor` impls for `Transaction` and `PoolConnection` have been deleted because they cannot exist in the new crate architecture without rewriting the `Executor` trait entirely.","migration_hint":null},{"from_version":"0.6.3","to_version":"0.7.0","change_type":"renamed","description":"The `decimal` feature has been renamed to `rust_decimal` to match the crate it actually provides integrations for.","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2074]]: fix: mssql uses unsigned for tinyint instead of signed [[@he4d]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2081]]: close unnamed portal after each executed extended query [[@DXist]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#1081]]: Add `try_from` attribute for `FromRow` derive [[@zzhengzhuo]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"Exemplifies \"out of sight, out of mind.\" It's surprisingly easy to forget about PRs when they get pushed onto","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2014]]: Support additional SQLCipher options in SQLite driver. [[@szymek156]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2052]]: Add issue templates [[@abonander]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2053]]: Add documentation for `IpAddr` support in Postgres [[@rakshith-ravi]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2062]]: Add extension support for SQLite [[@bradfier]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2063]]: customizable db locking during migration [[@fuzzbuck]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2025]]: Bump sqlformat to 2.0 [[@NSMustache]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2056]]: chore: Switch to sha1 crate [[@stoically]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2071]]: Use cargo check consistently in `prepare` [[@cycraig]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#1991]]: Ensure migration progress is not lost for Postgres, MySQL and SQLite. [[@crepererum]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2023]]: Fix expansion of `#[sqlx(flatten)]` for `FromRow` derive [[@RustyYato]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2028]]: Use fully qualified path when forwarding to `#[test]` from `#[sqlx::test]` [[@alexander-jackson]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2040]]: Fix typo in `FromRow` docs [[@zlidner]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2046]]: added flag for PIPES_AS_CONCAT connection setting for MySQL to fix #2034 [[@marcustut]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2055]]: Use unlock notify also on `sqlite3_exec`  [[@madadam]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2057]]: Make begin,commit,rollback cancel-safe in sqlite  [[@madadam]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2058]]: fix typo in documentation [[@lovasoa]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2067]]: fix(docs): close code block in query_builder.rs [[@abonander]]","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2069]]: Fix `prepare` race condition in workspaces [[@cycraig]]\\","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"NOTE: this changes the directory structure under `target/` that `cargo sqlx prepare` depends on.","migration_hint":null},{"from_version":"0.6.1","to_version":"0.6.2","change_type":"breaking","description":"[[#2072]]: SqliteConnectOptions typo [[@fasterthanlime]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"api","description":"Fortunately, future upgrades should not be breaking as `webpki` is no longer exposed in the API.","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"api","description":"Changed the signature for `Pool::close()` slightly","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"api","description":"Changed the expected signatures for `PoolOptions::after_connect`, `before_acquire`, `after_release`","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1618]]: SQLite `chrono::DateTime<FixedOffset>` timezone fix [[@05storm26]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1455]]: Upgrade `time` to 0.3 [[@paolobarbolini]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1505]]: Upgrade `rustls` to 0.20 [[@paolobarbolini]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1384]]: (Postgres) Move `server_version_num` from trait to inherent impl [[@AtkinsChang]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1426]]: Bump `ipnetwork` to 0.19 [[@paolobarbolini]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1529]]: Upgrade `bigdecimal` to 0.3 [[@e00E]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1602]]: postgres: use `Oid` everywhere instead of `u32` [[@paolobarbolini]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"This drops the `Type`, `Decode`, `Encode` impls for `u32` for Postgres as it was misleading.","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1612]]: Make all `ConnectOptions` types cloneable [[@05storm26]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"`DateTime<FixedOffset>` will be stored in SQLite with the correct timezone instead of always in UTC.","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1733]]: Update `git2` to 0.14 [[@joshtriplett]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1734]]: Make `PgLTree::push()` infallible and take `PgLTreeLabel` directly [[@sebpuetz]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1785]]: Fix Rust type for SQLite `REAL` [[@pruthvikar]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"Makes the macros always map a `REAL` column to `f64` instead of `f32` as SQLite uses **only** 64-bit floats.","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1816]]: Improve SQLite support for sub-queries and CTEs [[@tyrelr]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"This likely will change the generated code for some invocations `sqlx::query!()` with SQLite.","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1821]]: Update `uuid` crate to v1 [[@paolobarbolini]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"[[#1901]]: Pool fixes and breaking changes [[@abonander]]","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"breaking","description":"Now eagerly starts the pool closing, `.await`ing is only necessary if you want to ensure a graceful shutdown.","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"removed","description":"Deleted `PoolConnection::release()` which was previously deprecated in favor of `PoolConnection::detach()`.","migration_hint":null},{"from_version":"0.5.13","to_version":"0.6.0","change_type":"renamed","description":"Renamed `PoolOptions::connect_timeout` to `acquire_timeout` for clarity.","migration_hint":null},{"from_version":"0.2.6","to_version":"0.3.0","change_type":"breaking","description":"`Query::fetch` (returned from `query()`) now returns a new `Cursor` type. `Cursor` is a Stream-like type where the","migration_hint":null},{"from_version":"0.2.6","to_version":"0.3.0","change_type":"breaking","description":"`sqlx::Row` now has a lifetime (`'c`) tied to the database connection. In effect, this means that you cannot store `Row`s or collect","migration_hint":null},{"from_version":"0.2.6","to_version":"0.3.0","change_type":"breaking","description":"`HasSqlType<T>: Database` is now `T: Type<Database>` to mirror `Encode` and `Decode`","migration_hint":null},{"from_version":"0.2.6","to_version":"0.3.0","change_type":"removed","description":"Remove `PgTypeInfo::with_oid` and replace with `PgTypeInfo::with_name`","migration_hint":null}],"total":165,"note":"Curated major-version breaking changes. Always verify against the package's official changelog before migrating.","_cache":"miss"}