JDBI v3.7.0 Release Notes

    • ๐Ÿ†• New Features
      • @AllowUnusedBindings SqlObject customizer, like SqlStatements.setUnusedBindingsAllowed
      • Enums config class to change the default policy for binding and mapping Enum values.
      • @UseEnumStrategy SqlObject configurer for setting the default enum strategy.
      • @EnumByName and @EnumByOrdinal qualifying annotations to override said default policy.
      • Support for Postgres custom types, both user defined and driver types like PGInterval or PGcircle
      • RowView: add getColumn(QualifiedType) overloads
      • SetObjectArgumentFactory and GetObjectColumnMapperFactory to easily make use of direct type support provided by your database driver (e.g. many databases now directly support java.time objects).
      • simple Jackson2 @JsonView support
      • @Unmappable lets you skip properties during pojo / bean mapping
    • Beta Api Changes
      • Qualifiers.qualifiers renamed to findFor, restyled as JdbiConfig configuration class
    • ๐Ÿ›  Bugfixes
      • Improve vavr handling of typed null
    • ๐Ÿ‘Œ Improvements
      • Improve Error handling with transactions
      • Clean up our dependencies, remove vestiges of shade plugin
      • Upgrade to antlr4
      • Rework caching to not use extra threads (#1453)
      • Any valid Java identifier is now supported as a named parameter (e.g. :์ œ๋ชฉ) or defined attribute (e.g. <์ œ๋ชฉ>).
      • Nested inTransaction and useTransaction calls are now allowed in core, provided the inner transaction specifies the same transaction isolation level, or does not specify isolation. This brings core transaction behavior in line with the existing behavior for nested @Transaction SQL object methods.
      • Nested calls on a thread to Jdbi methods useHandle, withHandle, useTransaction, withTransaction, useExtension, withExtension, or to any method of an on-demand extension will now execute against the handle from the outermost call, rather than each invocation getting a separate handle.
    • Minor source incompatibility
      • JdbiPlugin methods now throws SQLException