Skip to content

Releases: seancorfield/honeysql

2.4.947

06 Nov 00:25
Compare
Choose a tag to compare
  • 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 on TRUNCATE.
  • 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, and MODIFY COLUMN.

2.3.928

04 Sep 17:26
Compare
Choose a tag to compare
  • Address #425 by clarifying that INTERVAL as special syntax may be MySQL-specific and PostgreSQL uses difference syntax (because INTERVAL is a data type there).
  • Address #423 by supporting DEFAULT values and DEFAULT rows in VALUES.
  • 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 and InlineValue with a sqlize function.
  • Address #413 by flagging a lack of WHERE clause for DELETE, DELETE FROM, and UPDATE when :checking :basic (or :checking :strict).
  • Fix #392 by adding support for WITH / (NOT) MATERIALIZED -- via PR #420 @robhanlon22.

2.3.911

30 Jul 02:36
Compare
Choose a tag to compare
  • 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 a CASE 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 produces MODIFY COLUMN when the MySQL dialect is selected) and deprecating :modify-column.
  • Address #401 by adding register-dialect! and get-dialect, and also making add-clause-before, strop, and upper-case public so that new dialects are easier to construct.

2.2.891

23 Apr 23:13
Compare
Choose a tag to compare
  • 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 the IN 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

22 Feb 04:29
Compare
Choose a tag to compare
  • Address #387 by making the function simpler.
  • Fix #385 by quoting inlined UUIDs.
  • Address #352 by treating :' as introducing a function name that should be formatted as a SQL entity (respects quoting, dot-splitting, etc).

2.2.861

31 Jan 06:33
Compare
Choose a tag to compare
  • Address #382 by adding :case-expr for BigQuery support.
  • Address #381 by adding generic-helper-variadic and generic-helper-unary to honey.sql.helpers.
  • Fix #380 by correcting test for function type in register-clause! and register-fn!.

2.2.858

20 Jan 21:13
Compare
Choose a tag to compare
  • Address #377 by adding honey.sql/map= to convert a hash map into an equality condition (for a WHERE clause).
  • Address #351 by adding a :cache option to honey.sql/format (for Clojure only, not ClojureScript).
  • Address #281 by adding support for SELECT * EXCEPT .. and SELECT * REPLACE .. and ARRAY<> and STRUCT<> 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

23 Dec 21:40
Compare
Choose a tag to compare
  • 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 include NULL values. Using :is / :is-not with values that are not Boolean and not nil will produce invalid SQL.
  • Update test dependencies.
  • Update build-clj to v0.6.5.

2.1.833

03 Dec 21:24
Compare
Choose a tag to compare
  • Fix #372 by merging :select-distinct-on differently.
  • Add empty column list check for SELECT and several other clauses, when :checking :basic (or :strict) is provided.
  • Update build-clj to v0.6.0.

2.1.832 (incomplete)

03 Dec 21:20
Compare
Choose a tag to compare
2.1.832 (incomplete) Pre-release
Pre-release
v2.1.832

extend lint checks to several column lists