Releases: seancorfield/honeysql
Releases Β· seancorfield/honeysql
2.4.947
- Fix #439 by rewriting how DDL options are processed; also fixes #386 and #437; Whilst this is intended to be purely a bug fix, it has the potential to be a breaking change -- hence the version jump to 2.4!
- Fix #438 by
supporting options onTRUNCATE
. - Address #435 by showing
CREATE TEMP TABLE
etc. - Fix #431.
- Address #430 by treating
:'
as introducing a name that should be treating literally and not formatted as a SQL entity (which respects quoting, dot-splitting, etc); this effectively expands the "escape hatch" introduced via #352 in 2.2.868. Note that the function context behavior formats as a SQL entity, rather than the usual SQL "keyword", whereas this new context is a literal transcription rather than as a SQL entity! - Address #427 by adding
set-options!
. - Address #415 by supporting multiple column names in
ADD COLUMN
,ALTER COLUMN
,DROP COLUMN
, andMODIFY COLUMN
.
2.3.928
- Address #425 by clarifying that
INTERVAL
as special syntax may be MySQL-specific and PostgreSQL uses difference syntax (becauseINTERVAL
is a data type there). - Address #423 by supporting
DEFAULT
values andDEFAULT
rows inVALUES
. - Address #422 by auto-quoting unusual entity names when
:quoted
(and:dialect
) are not specified, making HoneySQL more secure by default. - Fix #421 by adding
:replace-into
for:mysql
dialect. - Address #419 by adding
honey.sql.protocols
andInlineValue
with asqlize
function. - Address #413 by flagging a lack of
WHERE
clause forDELETE
,DELETE FROM
, andUPDATE
when:checking :basic
(or:checking :strict
). - Fix #392 by adding support for
WITH
/ (NOT
)MATERIALIZED
-- via PR #420 @robhanlon22.
2.3.911
- Address #418 by documenting a potential "gotcha" with multi-column
IN
expressions (a change from HoneySQL 1.x). - Fix #416 via PR #417 from @corasaurus-hex -- using the internal default state for the integrity assertion.
- Address #414 by providing an example of
ORDER BY
with aCASE
expression. - Address #412 by documenting options in a separate page and reorganizing the ToC structure.
- Address #409 by making docstring check for public helpers conditional.
- Fix #406 by adding
:alter-column
(which producesMODIFY COLUMN
when the MySQL dialect is selected) and deprecating:modify-column
. - Address #401 by adding
register-dialect!
andget-dialect
, and also makingadd-clause-before
,strop
, andupper-case
public so that new dialects are easier to construct.
2.2.891
- Address #404 by documenting PostgreSQL's
ARRAY
constructor syntax and how to produce it. - Address parts of #403 by improving the documentation for
:array
and also improving the exception that was thrown when it was misused. - Fix #402 by allowing for expressions in
:insert-into
table. - Address #400 by adding
:table
clause. - Address #399 by correcting multi-column
RETURNING
clauses in docs and tests. - Fix #398 by adding
honey.sql.pg-ops
namespace that registers PostgreSQL JSON and regex operators and provides symbolic names for "unwritable" operators (that contain@
,#
, or~
). - Address #396 by throwing an exception if you try to cache a SQL statement that includes an
IN ()
expression, using a named parameter for theIN
values. - Fix #394 by restoring HoneySQL 1.x's behavior when quoting.
- Fix #387 again.
- Update CI to reflect Clojure 1.11 release (master -> 1.11; new master is 1.12).
- Update
build-clj
to v0.8.0.
2.2.868
2.2.861
2.2.858
- Address #377 by adding
honey.sql/map=
to convert a hash map into an equality condition (for aWHERE
clause). - Address #351 by adding a
:cache
option tohoney.sql/format
(for Clojure only, not ClojureScript). - Address #281 by adding support for
SELECT * EXCEPT ..
andSELECT * REPLACE ..
andARRAY<>
andSTRUCT<>
column types -- see SQL Clause Reference - SELECT and SQL Clause Reference - DDL respectively for more details. - Update
build-clj
to v0.6.7.
2.2.840
- Fix #375 for
:nest
statement. - Fix #374 by removing aliasing of
:is
/:is-not
-- this changes the behavior of[:is-not :col true/false]
to be correct and includeNULL
values. Using:is
/:is-not
with values that are not Boolean and notnil
will produce invalid SQL. - Update test dependencies.
- Update
build-clj
to v0.6.5.
2.1.833
2.1.832 (incomplete)
v2.1.832 extend lint checks to several column lists