2.1.0
CHANGES:
-
There is now TLS support for PGX. The networking code (for PGX) was
revised in the process, in particular the EIO variant is now buffered,
which improves performarce. TLS implemantions are shipped as separate
packages (caqti-tls*
) butcaqti-tls-async
,caqti-tls-eio
, and
caqti-tls-lwt
should be considered experimental and will be omitted
from the OPAM release for now. On the other hand,caqti-mirage
now
ships with built-in TLS support for PGX. -
Connect functions now accept an optional configuration. For the time
being, this is used for TLS parameters and for the optional
tweaks_version
argument, which is still available for backwards
compatibility. -
The newly introduced
Caqti_query.qprintf
and associated formatters
have been moved to a separate moduleCaqti_query_fmt
(#108), to limit
clashes when used in local open, and since the formatters were nominally
underqualified. -
Constants of any field type can now be embedded in queries using the new
Caqti_query.V
constructor and associated shortcuts. This allows
taking advantage of driver-specific encoders, e.g. to correctly convert
aPtime.Span.t
to the representation expected by the target database
system. -
Equality with type unification evidence is now available for
Caqti_type.t
andCaqti_type.Field.t
. The equality type introduced
for the purpose is compatible withType.eq
from OCaml 5.1, but will
not be aliased yet. This required a backwards incompatible adjustment
of theCaqti_type.Product
constructor. -
Added tuples type constructors with arity up to 12.
-
Added multi-statement parser (
Caqti_query.angstrom_list_parser
)
intended for loading SQL schema files. -
The new
caqti.plugin
sublibrary is a drop-in replacement for the
caqti-dynload
package. It is based on thedune-site.plugin
library.
Please try it and report back if there are issues. -
Some updates to external dependencies, esp. we are now at EIO 0.12+.
-
Fixed lacking details in error messages related to driver load failures.
-
Fixed uncaught exceptions for PGX (#113).