Releases: seancorfield/next-jdbc
Releases · seancorfield/next-jdbc
Release 1.0.462
A new, optional, namespace next.jdbc.datafy
has been added to expand dataification (and navigation) to several JDBC object types.
Inside the reducing function over the result of plan
, you can now call next.jdbc.result-set/metadata
to get at a datafication of the ResultSetMetaData
object from the underlying ResultSet
object.
Release 1.0.445
Enhancements:
- Enhanced support in
plan
for "metadata" access:row-number
andcolumn-names
can be called on the abstract row (even after callingdatafiable-row
). In addition,Associative
access via numeric "keys" will read columns by index, and row abstractions now supportIndexed
access vianth
(which will also read columns by index). Fixes #110. - Support for Stuart Sierra's Component library, via
next.jdbc.connection/component
. See updated Getting Started guide for usage. - Investigate possible solutions for #106 (mutable transaction thread safety) -- experimental
locking
onConnection
object.
Documentation:
Release 1.0.424
- In Tips & Tricks, noted that MySQL returns
BLOB
columns asbyte[]
instead ofjava.sql.Blob
. - Address #103, #104 by adding a section on timeouts to Tips & Tricks.
- Fix #102 by allowing keywords or strings in
:return-keys
. - Fix #101 by tightening the spec on a JDBC URL to correctly reflect that it must start with
jdbc:
. - Add support for calling
.getLoginTimeout
/.setLoginTimeout
on the reifiedDataSource
returned byget-datasource
when called on a hash map "db-spec" or JDBC URL string. - Documentation improvements based on feedback (mostly from Slack), including a section on database metadata near the end of Getting Started.
Release 1.0.409
Add support for MariaDB (as :dbtype "mariadb"
) via PR #100 (@green-coder).
Release 1.0.405
This release includes no code changes, just documentation updates:
- Improve documentation around
plan
soreduce
etc is more obvious. - Attempt to drive readers to cljdoc.org instead of the GitHub version (which is harder to navigate).
Release 1.0.395
Enhancement:
- Add
read-as-instant
andread-as-local
functions tonext.jdbc.date-time
to extendReadableColumn
so that SQLDATE
andTIMESTAMP
columns can be read as Java Time types.
Documentation:
- Specifically call out PostgreSQL as needing
next.jdbc.date-time
to enable automatic conversion ofjava.util.Date
objects to SQL timestamps for prepared statements (#95). - Split Tips & Tricks into its own page, with a whole new section on using JSON data types with PostgreSQL (#94 -- thank you @vharmain).
Maintenance:
- Bump dependencies to latest.
Release 1.0.384
Bug fixes:
- Fix #88 by using 1-arity
keyword
call when table name unavailable (or:qualifier-fn
returnsnil
or an empty string); also allows:qualifier-fn
function to be called on empty table name (so:qualifier-fn (constantly "qual")
will now work much likeclojure.java.jdbc
's:qualifier "qual"
worked).
Enhancements:
- Improve
Unknown dbtype
exception message (to clarify that:classname
is also missing, #90). - Address #89, #91 by making minor performance tweaks to
next.jdbc.result-set
functions.
Documentation:
Release 1.0.13
Enhancements:
- Adds
next.jdbc.prepare/statement
to createStatement
objects with all the options available toprepare
except:return-keys
. - Adds a way to set arbitrary properties on
Connection
andStatement
/PreparedStatement
objects, post-creation. Note: this usesclojure.java.data
and the Java reflection API under the hood. #82
Documentation:
- Numerous clarifications based on feedback from folks on Slack!
Infrastructure:
- Update
org.clojure/java.data
to 0.1.5 (for property setting).
Release 1.0.12
Bug Fix:
- Fix #80 by avoiding the auto-commit restore after a failed rollback in a failed transaction.
Enhancement:
- Address #81 by splitting the SQL-building functions out of
next.jdbc.sql
intonext.jdbc.sql.builder
.
Documentation:
- Address #78 by documenting the
:connectionInitSql
workaround for HikariCP/PostgreSQL and non-default schemas.
Release 1.0.11
Bug Fix:
- Fix #76 by avoiding conversions on
java.sql.Date
andjava.sql.Timestamp
.
Documentation:
- Fix a few links.
- Fix typos in a few docstrings.
- Formatting tweaks for consistency.
Testing:
- Add testing against Microsoft SQL Server (run tests with environment variables
NEXT_JDBC_TEST_MSSQL=yes
andMSSQL_SA_PASSWORD
set to your local --127.0.0.1:1433
-- SQL Serversa
user password; assumes that it can create and dropfruit
andfruit_time
tables in themodel
database). - Add testing against MySQL (run tests with environment variables
NEXT_JDBC_TEST_MYSQL=yes
andMYSQL_ROOT_PASSWORD
set to your local --127.0.0.1:3306
-- MySQLroot
user password; assumes you have already created an empty database calledclojure_test
). - Bump several JDBC driver versions for up-to-date testing.