From d0bfc91f30ff8dfd7e5de140ef665c11be51edf5 Mon Sep 17 00:00:00 2001 From: qianmoQ Date: Thu, 2 Mar 2023 21:15:00 +0800 Subject: [PATCH] [Release] Released for 1.6.0 --- client/datacap-cli/pom.xml | 2 +- configure/publish/publish-newVersion.sh | 2 +- core/datacap-common/pom.xml | 2 +- core/datacap-parser/pom.xml | 2 +- core/datacap-server/pom.xml | 2 +- core/datacap-spi/pom.xml | 2 +- core/datacap-web/console-fe/package.json | 2 +- .../src/components/common/DataLazyTree.vue | 11 +- docs/docs/assets/logo.png | Bin 0 -> 65187 bytes docs/docs/download.md | 2 +- docs/docs/reference/plugin/native/alioss.md | 104 ++++++++++++++++++ docs/docs/reference/update/1.6.0.md | 54 +++++++++ docs/docs/release/1.5.0.md | 71 ++++++++++++ docs/docs/release/latest.md | 46 ++++---- docs/mkdocs.yml | 11 +- docs/overrides/main.html | 2 +- lib/datacap-http/pom.xml | 2 +- lib/datacap-logger/pom.xml | 2 +- plugin/datacap-http-clickhouse/pom.xml | 2 +- plugin/datacap-http-cratedb/pom.xml | 2 +- plugin/datacap-jdbc-clickhouse/pom.xml | 2 +- plugin/datacap-jdbc-cratedb/pom.xml | 2 +- plugin/datacap-jdbc-db2/pom.xml | 2 +- plugin/datacap-jdbc-dm/pom.xml | 2 +- plugin/datacap-jdbc-dremio/pom.xml | 2 +- plugin/datacap-jdbc-druid/pom.xml | 2 +- plugin/datacap-jdbc-duckdb/pom.xml | 2 +- plugin/datacap-jdbc-elasticsearch/pom.xml | 2 +- plugin/datacap-jdbc-h2/pom.xml | 2 +- plugin/datacap-jdbc-hive/pom.xml | 2 +- plugin/datacap-jdbc-ignite/pom.xml | 2 +- plugin/datacap-jdbc-impala/pom.xml | 2 +- plugin/datacap-jdbc-iotdb/pom.xml | 2 +- plugin/datacap-jdbc-kylin/pom.xml | 2 +- plugin/datacap-jdbc-kyuubi/pom.xml | 2 +- plugin/datacap-jdbc-monetdb/pom.xml | 2 +- plugin/datacap-jdbc-mongo/pom.xml | 2 +- plugin/datacap-jdbc-mysql/pom.xml | 2 +- plugin/datacap-jdbc-neo4j/pom.xml | 2 +- plugin/datacap-jdbc-oceanbase/pom.xml | 2 +- plugin/datacap-jdbc-oracle/pom.xml | 2 +- plugin/datacap-jdbc-phoenix/pom.xml | 2 +- plugin/datacap-jdbc-postgresql/pom.xml | 2 +- plugin/datacap-jdbc-presto/pom.xml | 2 +- plugin/datacap-jdbc-redis/pom.xml | 2 +- plugin/datacap-jdbc-snowflake/pom.xml | 2 +- plugin/datacap-jdbc-sqlserver/pom.xml | 2 +- plugin/datacap-jdbc-tdengine/pom.xml | 2 +- plugin/datacap-jdbc-trino/pom.xml | 2 +- plugin/datacap-jdbc-ydb/pom.xml | 2 +- plugin/datacap-native-alioss/pom.xml | 2 +- plugin/datacap-native-redis/pom.xml | 2 +- plugin/datacap-native-zookeeper/pom.xml | 2 +- pom.xml | 2 +- 54 files changed, 312 insertions(+), 79 deletions(-) create mode 100644 docs/docs/assets/logo.png create mode 100644 docs/docs/reference/plugin/native/alioss.md create mode 100644 docs/docs/reference/update/1.6.0.md create mode 100644 docs/docs/release/1.5.0.md diff --git a/client/datacap-cli/pom.xml b/client/datacap-cli/pom.xml index ac9935c9..ea10ab9d 100644 --- a/client/datacap-cli/pom.xml +++ b/client/datacap-cli/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/configure/publish/publish-newVersion.sh b/configure/publish/publish-newVersion.sh index a74afe8c..4512e2ad 100644 --- a/configure/publish/publish-newVersion.sh +++ b/configure/publish/publish-newVersion.sh @@ -35,7 +35,7 @@ job_runner_apply() { printf "Apply new version for web ...\n" # shellcheck disable=SC2164 - cd "$HOME"/core/web/console-fe + cd "$HOME"/core/datacap-web/console-fe npm version "$VERSION" --no-git-tag-version if [ $? -ne 0 ]; then printf "\nApply new version for web failed\n\n" diff --git a/core/datacap-common/pom.xml b/core/datacap-common/pom.xml index d7562653..6d0edabd 100644 --- a/core/datacap-common/pom.xml +++ b/core/datacap-common/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/core/datacap-parser/pom.xml b/core/datacap-parser/pom.xml index 23a01382..79a31ee9 100644 --- a/core/datacap-parser/pom.xml +++ b/core/datacap-parser/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/core/datacap-server/pom.xml b/core/datacap-server/pom.xml index c77ab1a1..9b1df783 100644 --- a/core/datacap-server/pom.xml +++ b/core/datacap-server/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/core/datacap-spi/pom.xml b/core/datacap-spi/pom.xml index 4732a313..8a979977 100644 --- a/core/datacap-spi/pom.xml +++ b/core/datacap-spi/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/core/datacap-web/console-fe/package.json b/core/datacap-web/console-fe/package.json index 5bcc59d8..915fb743 100644 --- a/core/datacap-web/console-fe/package.json +++ b/core/datacap-web/console-fe/package.json @@ -1,7 +1,7 @@ { "name": "datacap-fe", "description": "DataCap console", - "version": "1.6.0-SNAPSHOT", + "version": "1.6.0", "private": true, "scripts": { "dev": "vue-cli-service serve", diff --git a/core/datacap-web/console-fe/src/components/common/DataLazyTree.vue b/core/datacap-web/console-fe/src/components/common/DataLazyTree.vue index abec71d6..d0c81e7b 100644 --- a/core/datacap-web/console-fe/src/components/common/DataLazyTree.vue +++ b/core/datacap-web/console-fe/src/components/common/DataLazyTree.vue @@ -101,11 +101,12 @@ export default defineComponent({ if (response.status) { const header = response.data.headers[0]; response.data.columns.forEach(column => { - const data = new DataTree(); - data.title = column[header]; - data.database = item.database; - data.table = item.title; - data.level = DataTreeLevel.column; + const data = { + title: column[header], + database: item.database, + table: item.title, + level: DataTreeLevel.column + }; dataChildArray.push(data); }); } diff --git a/docs/docs/assets/logo.png b/docs/docs/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f1dba5344b9a4576c5de913841206217c557e5f2 GIT binary patch literal 65187 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 ] select_expression [, ...] +FROM from_item [. ...] +``` + +where `from_item` is one of + +```sql +table_name [ `a.b` | a.b | `a`.`b`] +``` + +!!! danger + + When `table_name` is set to `all` the root directory is searched. + +!!! note "Select expressions" + +Each `select_expression` must be in one of the following forms: + +```sql +expression [ column_alias ] +``` + +```sql +* +``` + +In the case of `expression [ column_alias ]`, a single output column is defined. + +In the case of `*`, all columns of the relation defined by the query are included in the result set. + +```sql + * +-------- + data +``` + +!!! danger + + If it is a multi-level directory, such as `/oss/id/2`, it will be written **\`oss\`.\`id\`.\`2\`**, and use `.` to split between directories. + +#### Configure + +--- + +DataCap uses configuration files by default [alioss.json](https://github.com/EdurtIO/datacap/blob/dev/server/src/main/etc/conf/plugins/native/alioss.json) + +!!! note + + If your Aliyun OSS service version requires other special configurations, please refer to modifying the configuration file and restarting the DataCap service. + +=== "Configure" + + | Field | Required | Default Value | + |:------:|:---------------------------------:|:-------------------------------------:| + | `Name` | :material-check-circle: { .red } | - | + | `Host` | :material-check-circle: { .red } | `https://oss-cn-regison.aliyuncs.com` | + +=== "Authorization" + + | Field | Required | Description | Default Value | + |:----------:|:---------------------------------:|:-------------:|:-------------:| + | `Username` | :material-check-circle: { .red } | access Id | - | + | `Password` | :material-check-circle: { .red } | access Secret | - | + +=== "Advanced" + + | Field | Required | Description | Default Value | + |:----------:|:--------------------------------:|:-----------:|:-------------:| + | `Database` | :material-check-circle: { .red } | bucket name | `default` | + +#### Version (Validation) + +--- + +!!! warning + + The online service has not been tested yet, if you have detailed test results, please submit [issues](https://github.com/EdurtIO/datacap/issues/new/choose) to us + +- [x] `all version` diff --git a/docs/docs/reference/update/1.6.0.md b/docs/docs/reference/update/1.6.0.md new file mode 100644 index 00000000..710c4d66 --- /dev/null +++ b/docs/docs/reference/update/1.6.0.md @@ -0,0 +1,54 @@ +!!! note + + To upgrade the software version `v1.6.0`, we need to go to the official website or the binary package distribution site to download the latest binary file of the software. + +For details of `v1.6.0` release, please [click](../../release/1.6.0.md) + +#### Require + +!!! danger + + Please take care to back up the current running service before updating + +- Stop server + +```bash +cd datacap +./bin/shutdown.sh +``` + +- Backing up the current service + +```bash +mv datacap datacap.bak +``` + +- Decompress binaries + +```bash +tar -xvzf datacap-server-1.6.0-release.tar.gz +``` + +#### Update schema + +- Connect to the My SQL server and execute the following script file + +```bash +cd schema/1.6.0 +source update.sql +``` + +#### Update server + +- Copy the service configuration file + +```bash +cp -r -i datacap.bak/configure datacap/ +``` + +- Restarting the Service + +```bash +cd datacap +./bin/restart.sh +``` diff --git a/docs/docs/release/1.5.0.md b/docs/docs/release/1.5.0.md new file mode 100644 index 00000000..3b735d9b --- /dev/null +++ b/docs/docs/release/1.5.0.md @@ -0,0 +1,71 @@ +!!! note + + The current release involves several major updates. + +:tada: :tada: :tada: :tada: :tada: :tada: **DataCap is released** :tada: :tada: :tada: :tada: :tada: :tada: + +| Release Version | Release Time | +|:---------------:|:------------:| +| `1.5.0` | `2023-02-16` | + +#### General + +--- + +- Support dsl query +- Remove incubator +- Add sql parser +- Refactor the module directories +- Set port default value is 0 + +#### SPI + +--- + +- Fixed jdbc no password exception is configured + +#### Web + +--- + +- Support multi column sort + +#### Plugins + +--- + +- Support zookeeper for native + +#### Docs + +--- + +- Add powered by page + +#### Redis (Native) + +--- + +- Fixed mget,hget value is displayed as null #219 + +#### Dependencies + +--- + +- Bump maven-javadoc-plugin from 2.10.4 to 3.4.1 +- Bump ojdbc8 from 21.1.0.0 to 21.9.0.0 +- Bump mongodb-jdbc from 2.0.0 to 2.0.2 + +#### Contributors + +--- + +!!! danger + + Many thanks to the following contributors for contributing to the source code of this release + + In no particular order + +| GitHub ID | +|:--------------:| +| @qianmoQ | diff --git a/docs/docs/release/latest.md b/docs/docs/release/latest.md index 3b735d9b..59edbad9 100644 --- a/docs/docs/release/latest.md +++ b/docs/docs/release/latest.md @@ -6,55 +6,53 @@ | Release Version | Release Time | |:---------------:|:------------:| -| `1.5.0` | `2023-02-16` | +| `1.6.0` | `2023-03-02` | #### General --- -- Support dsl query -- Remove incubator -- Add sql parser -- Refactor the module directories -- Set port default value is 0 +- Add logo +- Support `SHOW PATHS xxx` +- Fixed function time field +- Refactor all module +- Add http lib +- Add logger lib #### SPI --- -- Fixed jdbc no password exception is configured +- JDBC: Repair Connection failure Do not close the connection #### Web --- -- Support multi column sort +- Add default watermark +- Remove about page +- Add routing permission control +- Optimize lazy loading of the tree menu of the query page #### Plugins --- -- Support zookeeper for native +- Support duckdb for jdbc close #249 +- Support alioss for native #250 -#### Docs +#### Zookeeper (Native) --- -- Add powered by page - -#### Redis (Native) - ---- - -- Fixed mget,hget value is displayed as null #219 +- Support `SHOW PATHS` #### Dependencies --- -- Bump maven-javadoc-plugin from 2.10.4 to 3.4.1 -- Bump ojdbc8 from 21.1.0.0 to 21.9.0.0 -- Bump mongodb-jdbc from 2.0.0 to 2.0.2 +- Bump maven-javadoc-plugin from `3.4.1` to `3.5.1` +- Bump oceanbas-client from `2.4.0` to `2.4.2` #### Contributors @@ -66,6 +64,8 @@ In no particular order -| GitHub ID | -|:--------------:| -| @qianmoQ | +| GitHub ID | +|:----------:| +| @why198852 | +| @mlboy | +| @qianmoQ | diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 1befa588..80bfc30b 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -6,15 +6,15 @@ site_description: >- repo_name: EdurtIO/datacap repo_url: https://github.com/EdurtIO/datacap edit_uri: "https://github.com/EdurtIO/datacap/blob/dev/docs/docs" +current_version: 1.6.0 copyright: Copyright © 2022 EdurtIO theme: name: material custom_dir: overrides - icon: - logo: material/open-source-initiative - favicon: material/open-source-initiative + logo: assets/logo.png + favicon: assets/logo.png include_search_page: true search_index_only: true language: en @@ -131,6 +131,7 @@ nav: - Native: - Redis: reference/plugin/native/redis.md - Zookeeper: reference/plugin/native/zookeeper.md + - Aliyun OSS: reference/plugin/native/alioss.md - Http: - ClickHouse: reference/plugin/http/clickhouse.md - CrateDB: reference/plugin/v120/cratedb.md @@ -139,6 +140,7 @@ nav: - Kylin: reference/database/kylin.md - Oracle: reference/database/oracle.md - Update: + - Update to 1.6.0: reference/update/1.6.0.md - Update to 1.5.0: reference/update/1.5.0.md - Update to 1.4.0: reference/update/1.4.0.md - Update to 1.3.0: reference/update/1.3.0.md @@ -147,7 +149,8 @@ nav: - Development environment: developer_guide/env.md - Custom Plugin: developer_guide/plugin.md - Release Note: - - 1.5.0 (latest): release/latest.md + - 1.6.0 (latest): release/latest.md + - 1.5.0: release/1.5.0.md - 1.4.0: release/1.4.0.md - 1.3.0: release/1.3.0.md - 1.2.0: release/1.2.0.md diff --git a/docs/overrides/main.html b/docs/overrides/main.html index 02a58430..2efaafeb 100644 --- a/docs/overrides/main.html +++ b/docs/overrides/main.html @@ -13,7 +13,7 @@ This file was automatically generated - do not edit {% block announce %}
- DataCap 1.5.0 is released ... + DataCap {{config.current_version}} is released ... Do you ❤️ DataCap? Give us a 🌟 on GitHub diff --git a/lib/datacap-http/pom.xml b/lib/datacap-http/pom.xml index f8a6d57c..61f60d27 100644 --- a/lib/datacap-http/pom.xml +++ b/lib/datacap-http/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/lib/datacap-logger/pom.xml b/lib/datacap-logger/pom.xml index 7fc0bf34..5f609604 100644 --- a/lib/datacap-logger/pom.xml +++ b/lib/datacap-logger/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-http-clickhouse/pom.xml b/plugin/datacap-http-clickhouse/pom.xml index d68fa2d0..40140e19 100644 --- a/plugin/datacap-http-clickhouse/pom.xml +++ b/plugin/datacap-http-clickhouse/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-http-cratedb/pom.xml b/plugin/datacap-http-cratedb/pom.xml index c8b545d9..990edf0f 100644 --- a/plugin/datacap-http-cratedb/pom.xml +++ b/plugin/datacap-http-cratedb/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-clickhouse/pom.xml b/plugin/datacap-jdbc-clickhouse/pom.xml index 8fdf9659..4af21bd8 100644 --- a/plugin/datacap-jdbc-clickhouse/pom.xml +++ b/plugin/datacap-jdbc-clickhouse/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-cratedb/pom.xml b/plugin/datacap-jdbc-cratedb/pom.xml index 11215320..79830de9 100644 --- a/plugin/datacap-jdbc-cratedb/pom.xml +++ b/plugin/datacap-jdbc-cratedb/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-db2/pom.xml b/plugin/datacap-jdbc-db2/pom.xml index c8d30abe..d80f5fe9 100644 --- a/plugin/datacap-jdbc-db2/pom.xml +++ b/plugin/datacap-jdbc-db2/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-jdbc-dm/pom.xml b/plugin/datacap-jdbc-dm/pom.xml index e70d5a12..6675f4ed 100644 --- a/plugin/datacap-jdbc-dm/pom.xml +++ b/plugin/datacap-jdbc-dm/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-dremio/pom.xml b/plugin/datacap-jdbc-dremio/pom.xml index b7ba574c..224dae95 100644 --- a/plugin/datacap-jdbc-dremio/pom.xml +++ b/plugin/datacap-jdbc-dremio/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-druid/pom.xml b/plugin/datacap-jdbc-druid/pom.xml index 1b370288..90d1568c 100644 --- a/plugin/datacap-jdbc-druid/pom.xml +++ b/plugin/datacap-jdbc-druid/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-duckdb/pom.xml b/plugin/datacap-jdbc-duckdb/pom.xml index 7f46eeae..61d14c8b 100644 --- a/plugin/datacap-jdbc-duckdb/pom.xml +++ b/plugin/datacap-jdbc-duckdb/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-jdbc-elasticsearch/pom.xml b/plugin/datacap-jdbc-elasticsearch/pom.xml index 47dd794f..0b437c07 100644 --- a/plugin/datacap-jdbc-elasticsearch/pom.xml +++ b/plugin/datacap-jdbc-elasticsearch/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-h2/pom.xml b/plugin/datacap-jdbc-h2/pom.xml index c38a6a8b..c1173c9f 100644 --- a/plugin/datacap-jdbc-h2/pom.xml +++ b/plugin/datacap-jdbc-h2/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-hive/pom.xml b/plugin/datacap-jdbc-hive/pom.xml index d78548af..71064145 100644 --- a/plugin/datacap-jdbc-hive/pom.xml +++ b/plugin/datacap-jdbc-hive/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-ignite/pom.xml b/plugin/datacap-jdbc-ignite/pom.xml index a5c101a0..9a440bf7 100644 --- a/plugin/datacap-jdbc-ignite/pom.xml +++ b/plugin/datacap-jdbc-ignite/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-jdbc-impala/pom.xml b/plugin/datacap-jdbc-impala/pom.xml index 3e9d6284..44994716 100644 --- a/plugin/datacap-jdbc-impala/pom.xml +++ b/plugin/datacap-jdbc-impala/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-iotdb/pom.xml b/plugin/datacap-jdbc-iotdb/pom.xml index 9fcd6fe6..3a5257e5 100644 --- a/plugin/datacap-jdbc-iotdb/pom.xml +++ b/plugin/datacap-jdbc-iotdb/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-jdbc-kylin/pom.xml b/plugin/datacap-jdbc-kylin/pom.xml index f5485dd5..f1f726d5 100644 --- a/plugin/datacap-jdbc-kylin/pom.xml +++ b/plugin/datacap-jdbc-kylin/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-kyuubi/pom.xml b/plugin/datacap-jdbc-kyuubi/pom.xml index 5c4aa231..0f45f0cb 100644 --- a/plugin/datacap-jdbc-kyuubi/pom.xml +++ b/plugin/datacap-jdbc-kyuubi/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-monetdb/pom.xml b/plugin/datacap-jdbc-monetdb/pom.xml index 01cc0fc8..b0e231d3 100644 --- a/plugin/datacap-jdbc-monetdb/pom.xml +++ b/plugin/datacap-jdbc-monetdb/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-mongo/pom.xml b/plugin/datacap-jdbc-mongo/pom.xml index 471a31e2..28b47087 100644 --- a/plugin/datacap-jdbc-mongo/pom.xml +++ b/plugin/datacap-jdbc-mongo/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-mysql/pom.xml b/plugin/datacap-jdbc-mysql/pom.xml index 3130a535..f4c0c573 100644 --- a/plugin/datacap-jdbc-mysql/pom.xml +++ b/plugin/datacap-jdbc-mysql/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-neo4j/pom.xml b/plugin/datacap-jdbc-neo4j/pom.xml index ad7a20b1..29aac78c 100644 --- a/plugin/datacap-jdbc-neo4j/pom.xml +++ b/plugin/datacap-jdbc-neo4j/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-jdbc-oceanbase/pom.xml b/plugin/datacap-jdbc-oceanbase/pom.xml index cfb589f0..83c481f9 100644 --- a/plugin/datacap-jdbc-oceanbase/pom.xml +++ b/plugin/datacap-jdbc-oceanbase/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-oracle/pom.xml b/plugin/datacap-jdbc-oracle/pom.xml index d3708c15..f6c8b15c 100644 --- a/plugin/datacap-jdbc-oracle/pom.xml +++ b/plugin/datacap-jdbc-oracle/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-phoenix/pom.xml b/plugin/datacap-jdbc-phoenix/pom.xml index f5926185..94912157 100644 --- a/plugin/datacap-jdbc-phoenix/pom.xml +++ b/plugin/datacap-jdbc-phoenix/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-postgresql/pom.xml b/plugin/datacap-jdbc-postgresql/pom.xml index 023e8270..e4023b14 100644 --- a/plugin/datacap-jdbc-postgresql/pom.xml +++ b/plugin/datacap-jdbc-postgresql/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-presto/pom.xml b/plugin/datacap-jdbc-presto/pom.xml index 6fdf3d66..d43d5c7b 100644 --- a/plugin/datacap-jdbc-presto/pom.xml +++ b/plugin/datacap-jdbc-presto/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-redis/pom.xml b/plugin/datacap-jdbc-redis/pom.xml index 0e44f1b3..7ad736dc 100644 --- a/plugin/datacap-jdbc-redis/pom.xml +++ b/plugin/datacap-jdbc-redis/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-snowflake/pom.xml b/plugin/datacap-jdbc-snowflake/pom.xml index 533129dc..402dab8d 100644 --- a/plugin/datacap-jdbc-snowflake/pom.xml +++ b/plugin/datacap-jdbc-snowflake/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-jdbc-sqlserver/pom.xml b/plugin/datacap-jdbc-sqlserver/pom.xml index e18cc2ed..f729f56f 100644 --- a/plugin/datacap-jdbc-sqlserver/pom.xml +++ b/plugin/datacap-jdbc-sqlserver/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-tdengine/pom.xml b/plugin/datacap-jdbc-tdengine/pom.xml index 5f85e92c..6fbcc797 100644 --- a/plugin/datacap-jdbc-tdengine/pom.xml +++ b/plugin/datacap-jdbc-tdengine/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-trino/pom.xml b/plugin/datacap-jdbc-trino/pom.xml index ecbcf5d6..95cf9fa7 100644 --- a/plugin/datacap-jdbc-trino/pom.xml +++ b/plugin/datacap-jdbc-trino/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-jdbc-ydb/pom.xml b/plugin/datacap-jdbc-ydb/pom.xml index 6d1f0549..694ff625 100644 --- a/plugin/datacap-jdbc-ydb/pom.xml +++ b/plugin/datacap-jdbc-ydb/pom.xml @@ -6,7 +6,7 @@ io.edurt.datacap datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-native-alioss/pom.xml b/plugin/datacap-native-alioss/pom.xml index 9f061591..eac7a1eb 100644 --- a/plugin/datacap-native-alioss/pom.xml +++ b/plugin/datacap-native-alioss/pom.xml @@ -6,7 +6,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml diff --git a/plugin/datacap-native-redis/pom.xml b/plugin/datacap-native-redis/pom.xml index e524f382..e0b2d255 100644 --- a/plugin/datacap-native-redis/pom.xml +++ b/plugin/datacap-native-redis/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/plugin/datacap-native-zookeeper/pom.xml b/plugin/datacap-native-zookeeper/pom.xml index d88c85de..4c760415 100644 --- a/plugin/datacap-native-zookeeper/pom.xml +++ b/plugin/datacap-native-zookeeper/pom.xml @@ -5,7 +5,7 @@ datacap io.edurt.datacap - 1.6.0-SNAPSHOT + 1.6.0 ../../pom.xml 4.0.0 diff --git a/pom.xml b/pom.xml index fe4a1be3..e5fe8cb1 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ io.edurt.datacap datacap pom - 1.6.0-SNAPSHOT + 1.6.0 client/datacap-cli