- Added support for
uuid1.0 via thewith-uuid-1feature.
- Upgraded to
tokio-util0.7. - Upgraded to
parking_lot0.12.
- Fixed a bug where the client could enter into a transaction if the
Client::transactionfuture was dropped before completion.
- Fixed reporting of commit-time errors triggered by deferred constraints.
- Fixed a deadlock when pipelined requests concurrently prepare cached typeinfo queries.
- Added
SimpleQueryRow::columns. - Added support for
eui481.0 via thewith-eui48-1feature. - Added
FromSqlandToSqlimplementations for arrays via thearray-implsfeature. - Added support for
time0.3 via thewith-time-0_3feature.
SqlStateconstants can now be used inmatchpatterns.
- Added support for
geo-types0.7 viawith-geo-types-0_7feature. - Added
Client::clear_type_cache. - Added
Error::as_db_errorandError::is_closed.
- Upgraded to
tokio1.0. - Upgraded to
postgres-types0.2.
- Methods taking iterators of
ToSqlvalues can now take both&dyn ToSqlandT: ToSqlvalues.
- Upgraded to
tokio0.3. - Added the detail and hint fields to
DbError'sDisplayimplementation.
- Added support for
geo-types0.6.
- Added
Transaction::savepoint, which can be used to create a savepoint with a custom name.
- Added
Debugimplementations forClient,Row, andColumn. - Added
time0.2 support.
- Notice messages sent during the initial connection process are now collected and returned first from
Connection::poll_message.
- Deprecated
Client::cancel_queryandClient::cancel_query_rawin favor ofClient::cancel_token.
- Added
Client::build_transactionto allow configuration of various transaction options. - Added
Client::cancel_token, which returns a separate owned object that can be used to cancel queries. - Added accessors for
Configfields. - Added a
GenericClienttrait implemented forClientandTransactionand covering shared functionality.
- Removed some stray
println!s fromcopy_outinternals.
Client::copy_innow returns aSinkrather than taking in aStream.CopyStreamhas been renamed toCopyOutStream.Client::copy_inandClient::copy_outno longer take query parameters as PostgreSQL doesn't support parameters in COPY queries.TargetSessionAttrs,SslMode, andChannelBindingare now true non-exhaustive enums.
- Added
Client::query_optfor queries expected to return zero or one rows. - Added binary copy format support to the
binary_copymodule. - Added back query logging.
- Removed
uuid0.7 support.
- Upgraded
bytesto 0.5. - Upgraded
tokioto 0.2. - The TLS interface uses a trait to obtain channel binding information rather than returning it after the handshake.
- Changed the value of the
timezoneproperty fromGMTtoUTC. - Returned
Streamimplementations are now!Unpin.
- Added support for
uuid0.8. - Added the column to
Row::try_geterrors.
- The library now uses
std::futures::Futureand async/await syntax. - Most methods now take
&selfrather than&mut self. - The transaction API has changed to more closely resemble the synchronous API and is significantly more ergonomic.
- Methods now take
&[&(dyn ToSql + Sync)]rather than&[&dyn ToSql]to allow futures to beSend. - Methods are now "normal" async functions that no longer do work up-front.
- Statements are no longer required to be prepared explicitly before use. Methods taking
&Statementcan now also take&str, and will internally prepare the statement. ToSqlnow serializes its value into aBytesMutrather thanVec<u8>.- Methods that previously returned
Streams now returnVec<T>. New*_rawmethods still provide aStreaminterface.
- Added the
channel_binding=disable/allow/requireconfiguration to control use of channel binding. - Added the
Client::query_onemethod to cover the common case of a query that returns exactly one row.
- Significantly improved the performance of
queryandcopy_in.
- The items of the stream passed to
copy_inmust be'static.
- Fixed Cargo features to actually enable the functionality they claim to.
- The client API has been significantly overhauled. It now resembles
hyper's, with separateConnectionandClientobjects. See the crate-level documentation for more details. - The TLS connection mode (e.g.
prefer) is now part of the connection configuration rather than being passed in separately. - The Cargo features enabling
ToSqlandFromSqlimplementations for external crates are now versioned. For example,with-uuidis nowwith-uuid-0_7. This enables us to add support for new major versions of the crates in parallel without breaking backwards compatibility. - Upgraded from
tokio-coretotokio.
- Connection string configuration now more fully mirrors libpq's syntax, and supports both URL-style and key-value style strings.
FromSqlimplementations can now borrow from the data buffer. In particular, this means that you can deserialize values as&str. TheFromSqlOwnedtrait can be used as a bound to restrict code to deserializing owned values.- Added support for channel binding with SCRAM authentication.
- Added multi-host support in connection configuration.
- The client now supports query pipelining, which can be used as a latency hiding measure.
- While the crate uses
tokioby default, the base API can be used with any asynchronous stream type on any reactor. - Added support for simple query requests returning row data.
- The
with-opensslfeature has been removed. Use thetokio-postgres-opensslcrate instead. - The
with-rustc_serializeandwith-timefeatures have been removed. UseserdeandSystemTimeorchronoinstead.
Look at the release tags for information about older releases.