Prep for 2.0 Alpha 3

This commit is contained in:
Sean Corfield 2021-03-13 15:55:31 -08:00
parent 7c21a403c2
commit d76b2d82b1
6 changed files with 14 additions and 14 deletions

View file

@ -1,6 +1,7 @@
# Changes # Changes
* 2.0.0-alpha3 in progress * 2.0.0-alpha3 (for early testing; 2021-03-13)
* Change coordinates to `com.github.seancorfield/honeysql` (although new versions will continue to be deployed to `seancorfield/honeysql` for a while -- see the [Clojars Verified Group Names policy](https://github.com/clojars/clojars-web/wiki/Verified-Group-Names)).
* Support much richer range of syntax on `CREATE`/`DROP` statements in general, including columns, `TABLESPACE`, `CASCADE`, `WITH [NO] DATA`, etc. * Support much richer range of syntax on `CREATE`/`DROP` statements in general, including columns, `TABLESPACE`, `CASCADE`, `WITH [NO] DATA`, etc.
* Fix #306 by supporting `CREATE TABLE .. AS ..`. * Fix #306 by supporting `CREATE TABLE .. AS ..`.
* Fix #305 by supporting more complex join clauses. * Fix #305 by supporting more complex join clauses.
@ -15,7 +16,6 @@
* Reconcile `where` behavior with recent 1.0 changes (porting #283 to v2). * Reconcile `where` behavior with recent 1.0 changes (porting #283 to v2).
* Fix #280 by adding `:escape` as special syntax for regular expression patterns. * Fix #280 by adding `:escape` as special syntax for regular expression patterns.
* Fix #277 by adding `:join-by`/`join-by` so that you can have multiple `JOIN`'s in a specific order. * Fix #277 by adding `:join-by`/`join-by` so that you can have multiple `JOIN`'s in a specific order.
* 2.0.0-alpha2 (for early testing) * 2.0.0-alpha2 (for early testing)
* Since Alpha 1, a lot more documentation has been written and docstrings have been added to most functions in `honey.sql.helpers`. * Since Alpha 1, a lot more documentation has been written and docstrings have been added to most functions in `honey.sql.helpers`.
* Numerous small improvements have been made to clauses and helpers around insert/upsert. * Numerous small improvements have been made to clauses and helpers around insert/upsert.
@ -23,7 +23,7 @@
* This is a complete rewrite/simplification of HoneySQL that provides just two namespaces: * This is a complete rewrite/simplification of HoneySQL that provides just two namespaces:
* `honey.sql` -- this is the primary API via the `format` function as well as the various extension points. * `honey.sql` -- this is the primary API via the `format` 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. * `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. * The coordinates for HoneySQL 2.0 are `com.github.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.
# HoneySQL pre-2.x Changes # HoneySQL pre-2.x Changes

View file

@ -12,7 +12,7 @@ This project follows the version scheme MAJOR.MINOR.COMMITS where MAJOR and MINO
Prerelease builds of the upcoming 2.x version of HoneySQL are available for testing: Prerelease builds of the upcoming 2.x version of HoneySQL are available for testing:
[![Clojars Project](https://clojars.org/seancorfield/honeysql/latest-version.svg)](https://clojars.org/seancorfield/honeysql) [![cljdoc badge](https://cljdoc.org/badge/seancorfield/honeysql?2.0.0-alpha2)](https://cljdoc.org/d/seancorfield/honeysql/2.0.0-alpha2) [![Clojars Project](https://clojars.org/com.github.seancorfield/honeysql/latest-version.svg)](https://clojars.org/com.github.seancorfield/honeysql) [![cljdoc badge](https://cljdoc.org/badge/com.github.seancorfield/honeysql?2.0.0-alpha3)](https://cljdoc.org/d/com.github.seancorfield/honeysql/2.0.0-alpha3)
HoneySQL 2.x requires Clojure 1.9 or later. HoneySQL 2.x requires Clojure 1.9 or later.

View file

@ -19,7 +19,7 @@
:main-opts ["-m" "seancorfield.readme"]} :main-opts ["-m" "seancorfield.readme"]}
:eastwood {:extra-deps {jonase/eastwood {:mvn/version "0.3.13"}} :eastwood {:extra-deps {jonase/eastwood {:mvn/version "0.3.13"}}
:main-opts ["-m" "eastwood.lint" "{:source-paths,[\"src\"]}"]} :main-opts ["-m" "eastwood.lint" "{:source-paths,[\"src\"]}"]}
:jar {:replace-deps {seancorfield/depstar {:mvn/version "2.0.171"}} :jar {:replace-deps {com.github.seancorfield/depstar {:mvn/version "2.0.193"}}
:exec-fn hf.depstar/jar :exec-fn hf.depstar/jar
:exec-args {:jar "honeysql.jar" :sync-pom true}} :exec-args {:jar "honeysql.jar" :sync-pom true}}
:install {:replace-deps {slipset/deps-deploy {:mvn/version "0.1.5"}} :install {:replace-deps {slipset/deps-deploy {:mvn/version "0.1.5"}}

View file

@ -10,7 +10,7 @@ HoneySQL 1.x supported Clojure 1.7 and later. HoneySQL 2.x requires Clojure 1.9
## Group, Artifact, and Namespaces ## Group, Artifact, and Namespaces
HoneySQL 2.x uses the group ID `seancorfield` with the original artifact ID of `honeysql`, in line with the recommendations in Inside Clojure's post about the changes in the Clojure CLI: [Deprecated unqualified lib names](https://insideclojure.org/2020/07/28/clj-exec/). HoneySQL 2.x uses the group ID `com.github.seancorfield` with the original artifact ID of `honeysql`, in line with the recommendations in Inside Clojure's post about the changes in the Clojure CLI: [Deprecated unqualified lib names](https://insideclojure.org/2020/07/28/clj-exec/).
In addition, HoneySQL 2.x contains different namespaces so you can have both versions on your classpath without introducing any conflicts. The primary API is now in `honey.sql` and the helpers are in `honey.sql.helpers`. A Spec for the DSL data structure will be available in `honey.specs` at some point (work in progress). In addition, HoneySQL 2.x contains different namespaces so you can have both versions on your classpath without introducing any conflicts. The primary API is now in `honey.sql` and the helpers are in `honey.sql.helpers`. A Spec for the DSL data structure will be available in `honey.specs` at some point (work in progress).
@ -46,7 +46,7 @@ Supported Clojure versions: 1.7 and later.
```clojure ```clojure
;; in deps.edn: ;; in deps.edn:
seancorfield/honeysql {:mvn/version "2.x"} com.github.seancorfield/honeysql {:mvn/version "2.x"}
;; in use: ;; in use:
(ns my.project (ns my.project

View file

@ -9,13 +9,13 @@ data to a SQL statement (string) and any parameters it needs.
For the Clojure CLI, add the following dependency to your `deps.edn` file: For the Clojure CLI, add the following dependency to your `deps.edn` file:
```clojure ```clojure
seancorfield/honeysql {:mvn/version "2.0.0-alpha2"} com.github.seancorfield/honeysql {:mvn/version "2.0.0-alpha3"}
``` ```
For Leiningen, add the following dependency to your `project.clj` file: For Leiningen, add the following dependency to your `project.clj` file:
```clojure ```clojure
[seancorfield/honeysql "2.0.0-alpha2"] [com.github.seancorfield/honeysql "2.0.0-alpha3"]
``` ```
HoneySQL produces SQL statements but does not execute them. HoneySQL produces SQL statements but does not execute them.
@ -318,6 +318,6 @@ section. The full list
of "special syntax" functions is documented in the of "special syntax" functions is documented in the
[Special Syntax](special-syntax.md) section. The best [Special Syntax](special-syntax.md) section. The best
documentation for the helper functions is in the documentation for the helper functions is in the
[honey.sql.helpers](https://cljdoc.org/d/seancorfield/honeysql/2.0.0-alpha2/api/honey.sql.helpers) namespace. [honey.sql.helpers](https://cljdoc.org/d/com.github.seancorfield/honeysql/2.0.0-alpha3/api/honey.sql.helpers) namespace.
If you're migrating to HoneySQL 2.0, this [overview of differences If you're migrating to HoneySQL 2.0, this [overview of differences
between 1.0 and 2.0](differences-from-1-x.md) should help. between 1.0 and 2.0](differences-from-1-x.md) should help.

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>seancorfield</groupId> <groupId>com.github.seancorfield</groupId>
<artifactId>honeysql</artifactId> <artifactId>honeysql</artifactId>
<version>2.0.0-alpha2</version> <version>2.0.0-alpha3</version>
<name>honeysql</name> <name>honeysql</name>
<description>SQL as Clojure data structures.</description> <description>SQL as Clojure data structures.</description>
<url>https://github.com/seancorfield/honeysql</url> <url>https://github.com/seancorfield/honeysql</url>
@ -25,13 +25,13 @@
<url>https://github.com/seancorfield/honeysql</url> <url>https://github.com/seancorfield/honeysql</url>
<connection>scm:git:git://github.com/seancorfield/honeysql.git</connection> <connection>scm:git:git://github.com/seancorfield/honeysql.git</connection>
<developerConnection>scm:git:ssh://git@github.com/seancorfield/honeysql.git</developerConnection> <developerConnection>scm:git:ssh://git@github.com/seancorfield/honeysql.git</developerConnection>
<tag>v2.0.0-alpha2</tag> <tag>v2.0.0-alpha3</tag>
</scm> </scm>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.clojure</groupId> <groupId>org.clojure</groupId>
<artifactId>clojure</artifactId> <artifactId>clojure</artifactId>
<version>1.10.2</version> <version>1.9.0</version>
</dependency> </dependency>
</dependencies> </dependencies>
<build> <build>