Releases: seancorfield/honeysql
Releases · seancorfield/honeysql
Release 2.0.0 Beta 1
- Since Alpha 3, more documentation has been written and existing documentation clarified (addressing #300, #309, #313, #314).
- Fix #319 by ensuring
register-clause!
is idempotent. - Fix #317 by dropping qualifiers in
:set
clauses (just like we do with:insert
columns). Note that you can still use explicit dotted names if you want table qualification. - Fix #316 by disallowing entity names containing
;
(to avoid SQL injection risks). - Fix #312 by adding
:raw
as a clause. There is no helper function equivalent (because it would be ambiguous whether you meant a function form --[:raw ..]
-- or a clause form --{:raw ..}
; and for the same reason, there is nonest
helper function since that also works as a clause and as a function/special syntax).
Release 1.0.461
Important security fix: #299 potential SQL injection vulnerability!
Also includes an optimization for compound WHERE
clauses and some minor documentation improvements.
Release 2.0.0 Alpha 2
This is mainly a documentation overhaul (but I'm not done yet) from Alpha 1. Also includes a number of small improvements around insert/upsert (mostly PostgreSQL-specific).
Release 2.0.0 Alpha 1
- This is a complete rewrite/simplification of HoneySQL that provides just two namespaces:
honey.sql
-- this is the primary API via theformat
function as well as the various extension points.honey.sql.helpers
-- provides a helper function for every piece of the DSL that is supported out-of-the-box.
- The coordinates for HoneySQL 2.0 are
seancorfield/honeysql
so it can be added to a project that already uses HoneySQL 1.0 without any conflicts, making it easier to migrate piecemeal from 1.0 to 2.0.
Release 1.0.444
- Fix #259 so column names are always unqualified in inserts. (@jrdoane)
- Fix #257 by adding support for
cross-join
/merge-cross-join
/:cross-join
. (@dcj) - Switch dev/test pipeline to use CLI/
deps.edn
instead of Leiningen. Also, add CI via both CircleCI and GitHub Actions. - Switch to MAJOR.MINOR.COMMITS versioning.
- Remove
macrovich
dependency as this is no longer needed with modern ClojureScript. - Add mention of
next.jdbc
everywhereclojure.java.jdbc
was mentioned.
Release 0.9.10
- Fix #254 #255 by adding support for
except
. (@ted-coakley-otm) - Fix #253 properly by supporting
false
as well. (@ted-coakley-otm) - Add cljs testing to
deps.edn
, also multi-version clj testing and newreadme
testing.
Release 0.9.9
Fixes #253 which was a regression in join
introduced in 0.9.3.
Release 0.9.8
- Fix #249 by adding
honeysql.format/*namespace-as-table?*
and:namespace-as-table?
option toformat
. (@seancorfield)
This allows :table/column
style keywords to be used consistently (as if they were :table.column
) for better interop with other modern libraries.
Release 0.9.7
- Fix #248 by treating alias as "not a subquery" when generating SQL for it. (@seancorfield)
- Fix #247 by reverting #132 / #131 so the default behavior is friendlier for namespace-qualified keywords used for table and column names, but adds
honeysql.format/*allow-namespaced-names?*
to restore the previous behavior. A:allow-namespaced-names?
option has been adding toformat
to set this more easily. (@seancorfield) - Fix #235 by adding
set0
(:set0
) andset1
(:set1
) variants ofsset
(:set
) to support different placements ofSET
(beforeFROM
or afterJOIN
respectively) that different databases require. See also #200. (@seancorfield) - Fix #162 by adding
composite
/:composite
constructor for values. (@seancorfield) - Fix #139 by checking arguments to
columns
/merge-columns
and throwing an exception if a single collection is supplied (instead of varargs). (@seancorfield) - Fix #128 by adding
truncate
support. (@seancorfield) - Fix #99 by adding a note to the first use of
select
in the README that column names can be keywords or symbols but not strings. (@seancorfield)
Release 0.9.6
- Filter
nil
conditions out ofwhere
/merge-where
. Fix #246. (@seancorfield) - Fix reflection warning introduced in 0.9.5 (via PR #237).