diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml index 0b64007..502f7a8 100644 --- a/.github/workflows/check.yaml +++ b/.github/workflows/check.yaml @@ -39,18 +39,18 @@ jobs: uses: actions/checkout@v2 with: repository: metabase/metabase - ref: v0.49.12 + ref: v0.57.6 - name: Checkout Driver Repo uses: actions/checkout@v2 with: path: modules/drivers/databend - - name: Prepare JDK 17 + - name: Prepare JDK 23 uses: actions/setup-java@v2 with: distribution: "temurin" - java-version: "17" + java-version: "23" - name: Install Clojure CLI run: | @@ -58,13 +58,14 @@ jobs: sudo bash ./linux-install-1.11.1.1182.sh - name: Setup Node - uses: actions/setup-node@v2 + uses: actions/setup-node@v4 with: node-version: "18" cache: "yarn" + cache-dependency-path: "yarn.lock" - name: Get M2 cache - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: | ~/.m2 @@ -78,7 +79,7 @@ jobs: ls -lah resources/modules - name: Archive driver JAR - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: databend.metabase-driver.jar path: resources/modules/databend.metabase-driver.jar diff --git a/README.md b/README.md index 8c9b52b..eb82714 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ ### Prerequisites - [Leiningen](https://leiningen.org/) +- JDK 21 or newer (current builds target Metabase 0.56.x and above, which require Java 21+) ### Build from source @@ -47,6 +48,11 @@ LEIN_SNAPSHOTS_IN_RELEASE=true DEBUG=1 lein uberjar ``` + Notes: + + - Use JDK 21+ when compiling; newer Metabase builds (0.56.x and above) depend on Java 21 APIs and will fail on older JDKs. + - This driver version is intended for Metabase 0.56.x and later. For older Metabase releases, use the matching driver version from the table below. + 5. Let's assume we download `metabase.jar` from the [Metabase jar](https://www.metabase.com/docs/latest/operations-guide/running-the-metabase-jar-file.html) to `~/metabase/` and we built the project above. Copy the built jar to the Metabase plugins directly and run Metabase from there! ```shell @@ -72,4 +78,4 @@ You should see a message on startup similar to: | 0.42.x | 0.0.5 | | 0.44.x | 0.0.6 | | 0.47.7+ | 0.0.7 | -| 0.49.x | 0.0.8 | \ No newline at end of file +| 0.49.x | 0.0.8 | diff --git a/deps.edn b/deps.edn index b3d1718..3b1905a 100644 --- a/deps.edn +++ b/deps.edn @@ -2,7 +2,7 @@ ["src" "resources"] :deps - {com.databend/databend-jdbc {:mvn/version "0.0.7"} + {com.databend/databend-jdbc {:mvn/version "0.4.2"} com.widdindustries/cljc.java-time {:mvn/version "0.1.21"}} :mvn/repos {"releases" {:url "https://repo.repsy.io/mvn/databend/maven"}} diff --git a/metabase.pom b/metabase.pom index 96c7045..b8a4483 100644 --- a/metabase.pom +++ b/metabase.pom @@ -1,12 +1,12 @@ - + + 4.0.0 - amalloy - ring-buffer - jar - 1.3.1 - ring-buffer - Persistent bounded-size queue implementation in Clojure - https://github.com/clj-commons/ring-buffer + scout + scout + 0.1.0 + scout + Functional string searching and matching for parsing. + http://example.com/FIXME Eclipse Public License @@ -14,7 +14,10 @@ - ef3635c71182eac1b6ecfa216c14adf90fabd28e + scm:git:git://github.com/davidsantiago/scout.git + scm:git:ssh://git@github.com/davidsantiago/scout.git + 2b825a7f8d8073b805ad37e0006dccd8d2d9efef + https://github.com/davidsantiago/scout src @@ -25,20 +28,22 @@ + + dev-resources + resources target target/classes - central - https://repo1.maven.org/maven2/ + http://repo1.maven.org/maven2 - false + true true @@ -46,7 +51,7 @@ clojars - https://repo.clojars.org/ + http://clojars.org/repo/ true @@ -55,21 +60,11 @@ - - - org.clojure clojure - 1.10.1 - provided - - - org.clojure - clojurescript - 1.10.520 - provided + 1.3.0 diff --git a/project.clj b/project.clj index 07085bd..861e9b7 100644 --- a/project.clj +++ b/project.clj @@ -2,7 +2,7 @@ :min-lein-version "2.5.0" :dependencies - [[com.databend/databend-jdbc "0.0.7"] + [[com.databend/databend-jdbc "0.4.2"] [clojure.java-time "0.3.2"] ] diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.md5 b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.md5 index 5a8cc88..a428445 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.md5 +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.md5 @@ -1 +1 @@ -a99d82f92b21c5c761f0d2c8ac6b177e \ No newline at end of file +842303d66671f38eeac0faf81dfb1e0e \ No newline at end of file diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.sha1 b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.sha1 index 99aa6f6..5976c3f 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.sha1 +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.sha1 @@ -1 +1 @@ -cf45160a9fef4b0f3e15afdfcfa1ad063df70070 \ No newline at end of file +3a70ac07cecbf79c3e80c89d9b4a2eedd9f4c125 \ No newline at end of file diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom index 96c7045..b8a4483 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom @@ -1,12 +1,12 @@ - + + 4.0.0 - amalloy - ring-buffer - jar - 1.3.1 - ring-buffer - Persistent bounded-size queue implementation in Clojure - https://github.com/clj-commons/ring-buffer + scout + scout + 0.1.0 + scout + Functional string searching and matching for parsing. + http://example.com/FIXME Eclipse Public License @@ -14,7 +14,10 @@ - ef3635c71182eac1b6ecfa216c14adf90fabd28e + scm:git:git://github.com/davidsantiago/scout.git + scm:git:ssh://git@github.com/davidsantiago/scout.git + 2b825a7f8d8073b805ad37e0006dccd8d2d9efef + https://github.com/davidsantiago/scout src @@ -25,20 +28,22 @@ + + dev-resources + resources target target/classes - central - https://repo1.maven.org/maven2/ + http://repo1.maven.org/maven2 - false + true true @@ -46,7 +51,7 @@ clojars - https://repo.clojars.org/ + http://clojars.org/repo/ true @@ -55,21 +60,11 @@ - - - org.clojure clojure - 1.10.1 - provided - - - org.clojure - clojurescript - 1.10.520 - provided + 1.3.0 diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.md5 b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.md5 index 72e3845..f5e617d 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.md5 +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.md5 @@ -1 +1 @@ -419561bf2a35cfa4ece195698b6a6640 \ No newline at end of file +927bed85091e091f37059344817fd841 \ No newline at end of file diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.sha1 b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.sha1 index bd7ef01..ffe608e 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.sha1 +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.sha1 @@ -1 +1 @@ -8a10de8a144faafe7dd71decc36e0a2d9dc7af2e \ No newline at end of file +c4afa795efeb3025ca9f9a5b4e8c37f1f5d59249 \ No newline at end of file diff --git a/repo/com/databend/metabase-core/maven-metadata.xml b/repo/com/databend/metabase-core/maven-metadata.xml index 2284e58..9b97bfd 100644 --- a/repo/com/databend/metabase-core/maven-metadata.xml +++ b/repo/com/databend/metabase-core/maven-metadata.xml @@ -3,11 +3,11 @@ com.databend metabase-core - 1.41 + 1.40 1.40 1.41 - 20240528085732 + 20251219034729 diff --git a/repo/com/databend/metabase-core/maven-metadata.xml.md5 b/repo/com/databend/metabase-core/maven-metadata.xml.md5 index fff64a5..32afed7 100644 --- a/repo/com/databend/metabase-core/maven-metadata.xml.md5 +++ b/repo/com/databend/metabase-core/maven-metadata.xml.md5 @@ -1 +1 @@ -f5ab9f9594372558da4228baacdbb718 \ No newline at end of file +731b96f31e5a8c48a228d117fa1da59b \ No newline at end of file diff --git a/repo/com/databend/metabase-core/maven-metadata.xml.sha1 b/repo/com/databend/metabase-core/maven-metadata.xml.sha1 index 31b174e..16ec9af 100644 --- a/repo/com/databend/metabase-core/maven-metadata.xml.sha1 +++ b/repo/com/databend/metabase-core/maven-metadata.xml.sha1 @@ -1 +1 @@ -344de6db540a64af1dd9f9d602aef2c1fccbc83f \ No newline at end of file +f32a69d2cbb1ec187a478267cd32a5a39fc7aadf \ No newline at end of file diff --git a/src/metabase/driver/databend.clj b/src/metabase/driver/databend.clj index 050737a..5ebe3cf 100644 --- a/src/metabase/driver/databend.clj +++ b/src/metabase/driver/databend.clj @@ -7,7 +7,9 @@ [honey.sql :as sql] [java-time :as t] [medley.core :as m] - [metabase [config :as config] [driver :as driver] [util :as u]] + [metabase.config.core :as config] + [metabase.driver :as driver] + [metabase.util :as u] [metabase.driver.ddl.interface :as ddl.i] [metabase.driver.sql :as driver.sql] [metabase.driver.sql.util :as sql.u] @@ -21,7 +23,6 @@ [metabase.driver.sql-jdbc.sync.interface :as i] [metabase.util.honey-sql-2 :as h2x] [metabase.util.date-2 :as u.date] - [metabase.util.ssh :as ssh] [schema.core :as s]) (:import @@ -418,4 +419,4 @@ (defmethod driver.sql/set-role-statement :databend [_ role] - (format "SET ROLE %s;" role)) \ No newline at end of file + (format "SET ROLE %s;" role))