@@ -5,6 +5,129 @@ All notable changes to this project will be documented in this file.
55The format is based on [ Keep a Changelog] ( https://keepachangelog.com/en/1.0.0/ ) ,
66and this project adheres to [ Semantic Versioning] ( https://semver.org/spec/v2.0.0.html ) .
77
8+ ### 0.6.0 - 2022-06-16
9+
10+ This release marks the end of the 0.5.x series of releases and contains a number of breaking changes,
11+ mainly to do with backwards-incompatible dependency upgrades.
12+
13+ As we foresee many more of these in the future, we [ surveyed the community] on how to handle this;
14+ the consensus appears to be "just release breaking changes more often."
15+
16+ As such, we expect the 0.6.x release series to be a shorter one.
17+
18+ [ 39 pull requests(!)] [ 0.6.0-prs ] (not counting "prepare 0.5.12 release", of course) were merged this release cycle.
19+
20+ ### Breaking
21+ * [[ #1384 ]] : (Postgres) Move ` server_version_num ` from trait to inherent impl [[ @AtkinsChang ]]
22+ * [[ #1426 ]] : Bump ` ipnetwork ` to 0.19 [[ @paolobarbolini ]]
23+ * [[ #1455 ]] : Upgrade ` time ` to 0.3 [[ @paolobarbolini ]]
24+ * [[ #1505 ]] : Upgrade ` rustls ` to 0.20 [[ @paolobarbolini ]]
25+ * Fortunately, future upgrades should not be breaking as ` webpki ` is no longer exposed in the API.
26+ * [[ #1529 ]] : Upgrade ` bigdecimal ` to 0.3 [[ @e00E ]]
27+ * [[ #1602 ]] : postgres: use ` Oid ` everywhere instead of ` u32 ` [[ @paolobarbolini ]]
28+ * This drops the ` Type ` , ` Decode ` , ` Encode ` impls for ` u32 ` for Postgres as it was misleading.
29+ Postgres doesn't support unsigned ints without using an extension. These impls were decoding Postgres ` OID ` s
30+ as bare ` u32 ` s without any context (and trying to bind a ` u32 ` to a query would produce an ` OID ` value in SQL).
31+ This changes that to use a newtype instead, for clarity.
32+ * [[ #1612 ]] : Make all ` ConnectOptions ` types cloneable [[ @05storm26 ]]
33+ * [[ #1618 ]] : SQLite ` chrono::DateTime<FixedOffset> ` timezone fix [[ @05storm26 ]]
34+ * ` DateTime<FixedOffset> ` will be stored in SQLite with the correct timezone instead of always in UTC.
35+ This was flagged as a "potentially breaking change" since it changes how dates are sent to SQLite.
36+ * [[ #1733 ]] : Update ` git2 ` to 0.14 [[ @joshtriplett ]]
37+ * [[ #1734 ]] : Make ` PgLTree::push() ` infallible and take ` PgLTreeLabel ` directly [[ @sebpuetz ]]
38+ * [[ #1785 ]] : Fix Rust type for SQLite ` REAL ` [[ @pruthvikar ]]
39+ * Makes the macros always map a ` REAL ` column to ` f64 ` instead of ` f32 ` as SQLite uses ** only** 64-bit floats.
40+ * [[ #1816 ]] : Improve SQLite support for sub-queries and CTEs [[ @tyrelr ]]
41+ * This likely will change the generated code for some invocations ` sqlx::query!() ` with SQLite.
42+ * [[ #1821 ]] : Update ` uuid ` crate to v1 [[ @paolobarbolini ]]
43+ * [[ #1901 ]] : Pool fixes and breaking changes [[ @abonander ]]
44+ * Renamed ` PoolOptions::connect_timeout ` to ` acquire_timeout ` for clarity.
45+ * Changed the expected signatures for ` PoolOptions::after_connect ` , ` before_acquire ` , ` after_release `
46+ * Changed the signature for ` Pool::close() ` slightly
47+ * Now eagerly starts the pool closing, ` .await ` ing is only necessary if you want to ensure a graceful shutdown.
48+ * Deleted ` PoolConnection::release() ` which was previously deprecated in favor of ` PoolConnection::detach() ` .
49+ * Fixed connections getting leaked even when calling ` .close() ` .
50+
51+ ### Added
52+ * [[ #1843 ]] : Expose some useful methods on ` PgValueRef ` [[ @mfreeborn ]]
53+ * [[ #1889 ]] : SQLx-CLI: add ` --connect-timeout ` [[ @abonander ]]
54+ * Adds a default 10 second connection timeout to all commands.
55+ * [[ #1890 ]] : Added test for mssql LoginAck [[ @walf443 ]]
56+ * [[ #1891 ]] : Added test for mssql ProtocolInfo [[ @walf443 ]]
57+ * [[ #1892 ]] : Added test for mssql ReturnValue [[ @walf443 ]]
58+ * [[ #1895 ]] : Add support for ` i16 ` to ` Any ` driver [[ @EthanYuan ]]
59+ * [[ #1897 ]] : Expose ` ConnectOptions ` and ` PoolOptions ` on ` Pool ` and database name on ` PgConnectOptions ` [[ @Nukesor ]]
60+
61+ ### Changed
62+ * [[ #1782 ]] : Reuse a cached DB connection instead of always opening a new one for ` sqlx-macros ` [[ @LovecraftianHorror ]]
63+ * [[ #1807 ]] : Bump remaining dependencies [[ @paolobarbolini ]]
64+ * [[ #1808 ]] : Update to edition 2021 [[ @paolobarbolini ]]
65+ * Note that while SQLx [ does not officially track an MSRV] and only officially supports the latest stable Rust,
66+ this effectively places a lower bound of 1.56.0 on the range of versions it may work with.
67+ * [[ #1823 ]] : (sqlx-macros) Ignore deps when getting metadata for workspace root [[ @LovecraftianHorror ]]
68+ * [[ #1831 ]] : Update ` crc ` to 3.0 [[ @djc ]]
69+ * [[ #1887 ]] : query_as: don't stop stream after decoding error [[ @lovasoa ]]
70+
71+ ### Fixed
72+ * [[ #1814 ]] : SQLx-cli README: move ` Usage ` to the same level as ` Install ` [[ @tobymurray ]]
73+ * [[ #1815 ]] : SQLx-cli README: reword "building in offline mode" [[ @tobymurray ]]
74+ * [[ #1818 ]] : Trim ` [] ` from host string before passing to TcpStream [[ @smonv ]]
75+ * This fixes handling of database URLs with IPv6 hosts.
76+ * [[ #1842 ]] : Fix usage of ` serde_json ` in macros [[ @mfreeborn ]]
77+ * [[ #1855 ]] : Postgres: fix panics on unknown type OID when decoding [[ @demurgos ]]
78+ * [[ #1856 ]] : MySQL: support COLLATE_UTF8MB4_0900_AI_CI [[ @scottwey ]]
79+ * Fixes the MySQL driver thinking text columns are bytestring columns when querying against a Planetscale DB.
80+ * [[ #1861 ]] : MySQL: avoid panic when streaming packets are empty [[ @e-rhodes ]]
81+ * [[ #1863 ]] : Fix nullability check for inner joins in Postgres [[ @OskarPersson ]]
82+ * [[ #1881 ]] : Fix ` field is never read ` warnings on Postgres test [[ @walf443 ]]
83+ * [[ #1882 ]] : Fix ` unused result must be used ` warnings [[ @walf443 ]]
84+ * [[ #1888 ]] : Fix migration checksum comparison during ` sqlx migrate info ` [[ @mdtusz ]]
85+ * [[ #1894 ]] : Fix typos [[ @kianmeng ]]
86+
87+ [ surveyed the community ] : https://github.com/launchbadge/sqlx/issues/1796
88+ [ 0.6.0-prs ] : https://github.com/launchbadge/sqlx/pulls?page=2&q=is%3Apr+is%3Amerged+merged%3A2022-04-14..2022-06-16
89+ [ does not officially track an MSRV ] : /FAQ.md#what-versions-of-rust-does-sqlx-support-what-is-sqlxs-msrv
90+
91+ [ #1384 ] : https://github.com/launchbadge/sqlx/pull/1384
92+ [ #1426 ] : https://github.com/launchbadge/sqlx/pull/1426
93+ [ #1455 ] : https://github.com/launchbadge/sqlx/pull/1455
94+ [ #1505 ] : https://github.com/launchbadge/sqlx/pull/1505
95+ [ #1529 ] : https://github.com/launchbadge/sqlx/pull/1529
96+ [ #1602 ] : https://github.com/launchbadge/sqlx/pull/1602
97+ [ #1612 ] : https://github.com/launchbadge/sqlx/pull/1612
98+ [ #1618 ] : https://github.com/launchbadge/sqlx/pull/1618
99+ [ #1733 ] : https://github.com/launchbadge/sqlx/pull/1733
100+ [ #1734 ] : https://github.com/launchbadge/sqlx/pull/1734
101+ [ #1782 ] : https://github.com/launchbadge/sqlx/pull/1782
102+ [ #1785 ] : https://github.com/launchbadge/sqlx/pull/1785
103+ [ #1807 ] : https://github.com/launchbadge/sqlx/pull/1807
104+ [ #1808 ] : https://github.com/launchbadge/sqlx/pull/1808
105+ [ #1814 ] : https://github.com/launchbadge/sqlx/pull/1814
106+ [ #1815 ] : https://github.com/launchbadge/sqlx/pull/1815
107+ [ #1816 ] : https://github.com/launchbadge/sqlx/pull/1816
108+ [ #1818 ] : https://github.com/launchbadge/sqlx/pull/1818
109+ [ #1821 ] : https://github.com/launchbadge/sqlx/pull/1821
110+ [ #1823 ] : https://github.com/launchbadge/sqlx/pull/1823
111+ [ #1831 ] : https://github.com/launchbadge/sqlx/pull/1831
112+ [ #1842 ] : https://github.com/launchbadge/sqlx/pull/1842
113+ [ #1843 ] : https://github.com/launchbadge/sqlx/pull/1843
114+ [ #1855 ] : https://github.com/launchbadge/sqlx/pull/1855
115+ [ #1856 ] : https://github.com/launchbadge/sqlx/pull/1856
116+ [ #1861 ] : https://github.com/launchbadge/sqlx/pull/1861
117+ [ #1863 ] : https://github.com/launchbadge/sqlx/pull/1863
118+ [ #1881 ] : https://github.com/launchbadge/sqlx/pull/1881
119+ [ #1882 ] : https://github.com/launchbadge/sqlx/pull/1882
120+ [ #1887 ] : https://github.com/launchbadge/sqlx/pull/1887
121+ [ #1888 ] : https://github.com/launchbadge/sqlx/pull/1888
122+ [ #1889 ] : https://github.com/launchbadge/sqlx/pull/1889
123+ [ #1890 ] : https://github.com/launchbadge/sqlx/pull/1890
124+ [ #1891 ] : https://github.com/launchbadge/sqlx/pull/1891
125+ [ #1892 ] : https://github.com/launchbadge/sqlx/pull/1892
126+ [ #1894 ] : https://github.com/launchbadge/sqlx/pull/1894
127+ [ #1895 ] : https://github.com/launchbadge/sqlx/pull/1895
128+ [ #1897 ] : https://github.com/launchbadge/sqlx/pull/1897
129+ [ #1901 ] : https://github.com/launchbadge/sqlx/pull/1901
130+
8131## 0.5.13 - 2022-04-15
9132
10133This is a hotfix that reverts [ #1748 ] as that was an accidental breaking change:
@@ -1268,4 +1391,18 @@ Fix docs.rs build by enabling a runtime feature in the docs.rs metadata in `Carg
12681391[@ mgrachev]: https: // github.com/mgrachev
12691392[@ tyrelr]: https: // github.com/tyrelr
12701393[@ SebastienGllmt ]: https: // github.com/SebastienGllmt
1271-
1394+ [@ e00E]: https: // github.com/e00E
1395+ [@ sebpuetz]: https: // github.com/sebpuetz
1396+ [@ pruthvikar]: https: // github.com/pruthvikar
1397+ [@ tobymurray]: https: // github.com/tobymurray
1398+ [@ djc]: https: // github.com/djc
1399+ [@ mfreeborn]: https: // github.com/mfreeborn
1400+ [@ scottwey]: https: // github.com/scottwey
1401+ [@ e- rhodes]: https: // github.com/e-rhodes
1402+ [@ OskarPersson ]: https: // github.com/OskarPersson
1403+ [@ walf443]: https: // github.com/walf443
1404+ [@ lovasoa]: https: // github.com/lovasoa
1405+ [@ mdtusz]: https: // github.com/mdtusz
1406+ [@ kianmeng]: https: // github.com/kianmeng
1407+ [@ EthanYuan ]: https: // github.com/EthanYuan
1408+ [@ Nukesor ]: https: // github.com/Nukesor
0 commit comments