doobie v0.7.0 Release Notes
Release Date: 2019-05-26 // almost 5 years ago-
This is a compatibility-breaking release, although most source code should compile unmodified.
The big changes are improvements in resource safety:
- Replaced
MonadError
-basedguarantee
withbracket
, which prevents potential resource leakage when using cancelable IO; and improves transactor resource safety by usingResource
. The migration guide contains slightly more information. Thanks Sam Guymer for these updates! - ⚡️
Fragment
concatenation and derived combinators likeFragments.in
are now stacksafe, so you can now have giganticIN
clauses. This required API changes inParam
,Fragment
,Update[0]
andQuery[0]
but these should not affect most users.
🆕 New features:
- At long last there is a
doobie-quill
module that allows constructingConnectionIO
values via Quill quotes. See the new book chapter for examples. Many thanks to Alex Ioffe and Chris Davenport for their assistance!
And an assortment of other improvements:
- Postgis has been upgraded to v2.3.0. Thanks Erlend Hamnaberg!
- Added support for Scala 2.13.0-M5, many thanks to Sam Guymer for setting this up!
TypeTag
constraint onAnalyzable
has been relaxed toWeakTypeTag
. Thanks nigredo-tori!- New syntax allows
.transact
onOptionT
andEitherT
ofConnectionIO
, rolling back in the failure cases. Thanks Julien Truffaut! - Postgres now supports arrays of Scala
BigDecimal
. Thanks Nicolas Rémond! - Most calls to
throw
have been replaced withraiseError
, which allows doobie to work with effect types that don't catch. Thanks Sam Guymer! - Some things in the build were preventing doobie from cooperating with the community build. This has been fixed, thanks Seth Tisue!
Text[Char]
instance was added for PostgresCOPY FROM STDIN
. Thanks Dermot Haughey!- You can now create a
HikariTransactor
from aHikariConfig
. Thanks Yuriy Badalyantc! - Thanks to Harry Laoulakos and Daan Hoogenboezem for documentation updates!
Fragment
combinators now parenthesize arguments so associativity in Scala is reflected in generated SQL. Thanks Katrix!
- Replaced