This is an automated email from the ASF dual-hosted git repository.
zhouky pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-celeborn.git
The following commit(s) were added to refs/heads/main by this push:
new 49b6b10d5 [CELEBORN-879] Add `dev/dependencies.sh` for audit
dependencies
49b6b10d5 is described below
commit 49b6b10d5e1d94221fab489e01705759c5cda09d
Author: Fu Chen <[email protected]>
AuthorDate: Sat Aug 26 15:59:20 2023 +0800
[CELEBORN-879] Add `dev/dependencies.sh` for audit dependencies
### What changes were proposed in this pull request?
As title
### Why are the changes needed?
As title
### Does this PR introduce _any_ user-facing change?
No
### How was this patch tested?
Pass GA
Closes #1797 from cfmcgrady/audit-deps.
Authored-by: Fu Chen <[email protected]>
Signed-off-by: zky.zhoukeyong <[email protected]>
---
dev/dependencies.sh | 216 ++++++++++++++++++++++++++++++++
dev/deps/dependencies-client-flink-1.14 | 78 ++++++++++++
dev/deps/dependencies-client-flink-1.15 | 78 ++++++++++++
dev/deps/dependencies-client-flink-1.17 | 78 ++++++++++++
dev/deps/dependencies-client-spark-2.4 | 81 ++++++++++++
dev/deps/dependencies-client-spark-3.0 | 78 ++++++++++++
dev/deps/dependencies-client-spark-3.1 | 78 ++++++++++++
dev/deps/dependencies-client-spark-3.2 | 78 ++++++++++++
dev/deps/dependencies-client-spark-3.3 | 78 ++++++++++++
dev/deps/dependencies-client-spark-3.4 | 82 ++++++++++++
dev/deps/dependencyList | 92 ++++++++++++++
pom.xml | 11 ++
12 files changed, 1028 insertions(+)
diff --git a/dev/dependencies.sh b/dev/dependencies.sh
new file mode 100755
index 000000000..90b94b5ab
--- /dev/null
+++ b/dev/dependencies.sh
@@ -0,0 +1,216 @@
+#!/usr/bin/env bash
+
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+set -ex
+
+# Explicitly set locale in order to make `sort` output consistent across
machines.
+# See https://stackoverflow.com/questions/28881 for more details.
+export LC_ALL=C
+
+PWD=$(cd "$(dirname "$0")"/.. || exit; pwd)
+
+MVN="${PWD}/build/mvn"
+SBT="${PWD}/build/sbt"
+
+SBT_ENABLED="false"
+REPLACE="false"
+CHECK="false"
+MODULE=""
+
+DEP_PR=""
+DEP=""
+
+function mvn_build_classpath() {
+ $MVN -P$MODULE clean install -DskipTests -am -pl $MVN_MODULES
+ $MVN -P$MODULE dependency:build-classpath -am -pl $MVN_MODULES | \
+ grep -v "INFO\|WARN" | \
+ # This will skip the first two lines
+ tail -n +3 | \
+ tr ":" "\n" | \
+ awk -F '/' '{
+ artifact_id=$(NF-2);
+ version=$(NF-1);
+ jar_name=$NF;
+ classifier_start_index=length(artifact_id"-"version"-") + 1;
+ classifier_end_index=index(jar_name, ".jar") - 1;
+ classifier=substr(jar_name, classifier_start_index, classifier_end_index
- classifier_start_index + 1);
+ print artifact_id"/"version"/"classifier"/"jar_name
+ }' | grep -v "celeborn" | sort -u >> "${DEP_PR}"
+}
+
+function sbt_build_client_classpath() {
+ $SBT -P$MODULE "error; clean; export
${SBT_PROJECT}/Runtime/externalDependencyClasspath" | \
+ tail -1 | \
+ tr ":" "\n" | \
+ awk -F '/' '{
+ artifact_id=$(NF-2);
+ version=$(NF-1);
+ jar_name=$NF;
+ classifier_start_index=length(artifact_id"-"version"-") + 1;
+ classifier_end_index=index(jar_name, ".jar") - 1;
+ classifier=substr(jar_name, classifier_start_index, classifier_end_index
- classifier_start_index + 1);
+ print artifact_id"/"version"/"classifier"/"jar_name
+ }' | sort -u >> "${DEP_PR}"
+}
+
+function sbt_build_server_classpath() {
+ $SBT "error; clean; export externalDependencyClasspath" | \
+ awk '/externalDependencyClasspath/ { found=1 } found { print }' | \
+ awk 'NR % 2 == 0' | \
+ # This will skip the last line
+ sed '$d' | \
+ tr ":" "\n" | \
+ awk -F '/' '{
+ artifact_id=$(NF-2);
+ version=$(NF-1);
+ jar_name=$NF;
+ classifier_start_index=length(artifact_id"-"version"-") + 1;
+ classifier_end_index=index(jar_name, ".jar") - 1;
+ classifier=substr(jar_name, classifier_start_index, classifier_end_index
- classifier_start_index + 1);
+ print artifact_id"/"version"/"classifier"/"jar_name
+ }' | sort -u >> "${DEP_PR}"
+}
+
+function check_diff() {
+ set +e
+ the_diff=$(diff "${DEP}" "${DEP_PR}")
+ set -e
+ rm -rf "${DEP_PR}"
+ if [[ -n "${the_diff}" ]]; then
+ echo "Dependency List Changed Detected: "
+ echo "${the_diff}"
+ echo "To update the dependency file, run './dev/dependencies.sh
--replace'."
+ exit 1
+ fi
+}
+
+function exit_with_usage() {
+ echo "Usage: $0 [--sbt | --mvn] [--replace] [--check] [--module
MODULE_VALUE] [--help]"
+ exit 1
+}
+
+# Parse arguments
+while (( "$#" )); do
+ case $1 in
+ --sbt)
+ SBT_ENABLED="true"
+ ;;
+ --mvn)
+ SBT_ENABLED="false"
+ ;;
+ --replace)
+ REPLACE="true"
+ ;;
+ --check)
+ CHECK="true"
+ ;;
+ --module) # Support for --module parameter
+ shift
+ MODULE="$1"
+ ;;
+ --help)
+ exit_with_usage
+ ;;
+ --*)
+ echo "Error: $1 is not supported"
+ exit_with_usage
+ ;;
+ *)
+ echo "Error: $1 is not supported"
+ exit_with_usage
+ ;;
+ esac
+ shift
+done
+
+case "$MODULE" in
+ "spark-2.4")
+ MVN_MODULES="client-spark/spark-2"
+ SBT_PROJECT="celeborn-client-spark-2"
+ ;;
+ "spark-3.0" | "spark-3.1" | "spark-3.2" | "spark-3.3" | "spark-3.4")
+ MVN_MODULES="client-spark/spark-3"
+ SBT_PROJECT="celeborn-client-spark-3"
+ ;;
+ "flink-1.14")
+ MVN_MODULES="client-flink/flink-1.14"
+ SBT_PROJECT="celeborn-client-flink-1_14"
+ ;;
+ "flink-1.15")
+ MVN_MODULES="client-flink/flink-1.15"
+ SBT_PROJECT="celeborn-client-flink-1_15"
+ ;;
+ "flink-1.17")
+ MVN_MODULES="client-flink/flink-1.17"
+ SBT_PROJECT="celeborn-client-flink-1_17"
+ ;;
+ *)
+ MVN_MODULES="worker,master"
+ ;;
+esac
+
+
+if [ "$MODULE" = "server" ]; then
+ DEP="${PWD}/dev/deps/dependencies-server"
+ DEP_PR="${PWD}/dev/deps/dependencies-server.tmp"
+else
+ DEP="${PWD}/dev/deps/dependencies-client-$MODULE"
+ DEP_PR="${PWD}/dev/deps/dependencies-client-$MODULE.tmp"
+fi
+
+rm -rf "${DEP_PR}"
+cat >"${DEP_PR}"<<EOF
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+EOF
+
+if [ "$SBT_ENABLED" == "true" ]; then
+ if [ "$MODULE" == "server" ]; then
+ sbt_build_server_classpath
+ else
+ sbt_build_client_classpath
+ fi
+else
+ mvn_build_classpath
+fi
+
+if [ "$REPLACE" == "true" ]; then
+ rm -rf "${DEP}"
+ mv "${DEP_PR}" "${DEP}"
+ exit 0
+fi
+
+if [ "$CHECK" == "true" ]; then
+ check_diff
+fi
diff --git a/dev/deps/dependencies-client-flink-1.14
b/dev/deps/dependencies-client-flink-1.14
new file mode 100644
index 000000000..7e8c870ff
--- /dev/null
+++ b/dev/deps/dependencies-client-flink-1.14
@@ -0,0 +1,78 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.8.0//lz4-java-1.8.0.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.12.15//scala-library-2.12.15.jar
+scala-reflect/2.12.15//scala-reflect-2.12.15.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.5.2-1//zstd-jni-1.5.2-1.jar
diff --git a/dev/deps/dependencies-client-flink-1.15
b/dev/deps/dependencies-client-flink-1.15
new file mode 100644
index 000000000..7e8c870ff
--- /dev/null
+++ b/dev/deps/dependencies-client-flink-1.15
@@ -0,0 +1,78 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.8.0//lz4-java-1.8.0.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.12.15//scala-library-2.12.15.jar
+scala-reflect/2.12.15//scala-reflect-2.12.15.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.5.2-1//zstd-jni-1.5.2-1.jar
diff --git a/dev/deps/dependencies-client-flink-1.17
b/dev/deps/dependencies-client-flink-1.17
new file mode 100644
index 000000000..7e8c870ff
--- /dev/null
+++ b/dev/deps/dependencies-client-flink-1.17
@@ -0,0 +1,78 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.8.0//lz4-java-1.8.0.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.12.15//scala-library-2.12.15.jar
+scala-reflect/2.12.15//scala-reflect-2.12.15.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.5.2-1//zstd-jni-1.5.2-1.jar
diff --git a/dev/deps/dependencies-client-spark-2.4
b/dev/deps/dependencies-client-spark-2.4
new file mode 100644
index 000000000..917a04448
--- /dev/null
+++ b/dev/deps/dependencies-client-spark-2.4
@@ -0,0 +1,81 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jackson-annotations/2.6.7//jackson-annotations-2.6.7.jar
+jackson-core/2.6.7//jackson-core-2.6.7.jar
+jackson-databind/2.6.7.3//jackson-databind-2.6.7.3.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.4.0//lz4-java-1.4.0.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.11.12//scala-library-2.11.12.jar
+scala-reflect/2.11.12//scala-reflect-2.11.12.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.4.4-3//zstd-jni-1.4.4-3.jar
diff --git a/dev/deps/dependencies-client-spark-3.0
b/dev/deps/dependencies-client-spark-3.0
new file mode 100644
index 000000000..5005ba525
--- /dev/null
+++ b/dev/deps/dependencies-client-spark-3.0
@@ -0,0 +1,78 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.7.1//lz4-java-1.7.1.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.12.10//scala-library-2.12.10.jar
+scala-reflect/2.12.10//scala-reflect-2.12.10.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.4.4-3//zstd-jni-1.4.4-3.jar
diff --git a/dev/deps/dependencies-client-spark-3.1
b/dev/deps/dependencies-client-spark-3.1
new file mode 100644
index 000000000..6e8fd9703
--- /dev/null
+++ b/dev/deps/dependencies-client-spark-3.1
@@ -0,0 +1,78 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.7.1//lz4-java-1.7.1.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.12.10//scala-library-2.12.10.jar
+scala-reflect/2.12.10//scala-reflect-2.12.10.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.4.8-1//zstd-jni-1.4.8-1.jar
diff --git a/dev/deps/dependencies-client-spark-3.2
b/dev/deps/dependencies-client-spark-3.2
new file mode 100644
index 000000000..6fbebf79d
--- /dev/null
+++ b/dev/deps/dependencies-client-spark-3.2
@@ -0,0 +1,78 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.7.1//lz4-java-1.7.1.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.12.15//scala-library-2.12.15.jar
+scala-reflect/2.12.15//scala-reflect-2.12.15.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.5.0-4//zstd-jni-1.5.0-4.jar
diff --git a/dev/deps/dependencies-client-spark-3.3
b/dev/deps/dependencies-client-spark-3.3
new file mode 100644
index 000000000..7e8c870ff
--- /dev/null
+++ b/dev/deps/dependencies-client-spark-3.3
@@ -0,0 +1,78 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.8.0//lz4-java-1.8.0.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.12.15//scala-library-2.12.15.jar
+scala-reflect/2.12.15//scala-reflect-2.12.15.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.5.2-1//zstd-jni-1.5.2-1.jar
diff --git a/dev/deps/dependencies-client-spark-3.4
b/dev/deps/dependencies-client-spark-3.4
new file mode 100644
index 000000000..8c570f49d
--- /dev/null
+++ b/dev/deps/dependencies-client-spark-3.4
@@ -0,0 +1,82 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+lz4-java/1.8.0//lz4-java-1.8.0.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.87.Final/linux-aarch_64/netty-transport-native-epoll-4.1.87.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.87.Final/linux-x86_64/netty-transport-native-epoll-4.1.87.Final-linux-x86_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.87.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.87.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.87.Final/osx-x86_64/netty-transport-native-kqueue-4.1.87.Final-osx-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+scala-library/2.12.17//scala-library-2.12.17.jar
+scala-reflect/2.12.17//scala-reflect-2.12.17.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.5.2-5//zstd-jni-1.5.2-5.jar
diff --git a/dev/deps/dependencyList b/dev/deps/dependencyList
new file mode 100644
index 000000000..d52e773db
--- /dev/null
+++ b/dev/deps/dependencyList
@@ -0,0 +1,92 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+RoaringBitmap/0.9.32//RoaringBitmap-0.9.32.jar
+commons-cli/1.5.0//commons-cli-1.5.0.jar
+commons-crypto/1.0.0//commons-crypto-1.0.0.jar
+commons-io/2.13.0//commons-io-2.13.0.jar
+commons-lang3/3.12.0//commons-lang3-3.12.0.jar
+commons-logging/1.1.3//commons-logging-1.1.3.jar
+guava/14.0.1//guava-14.0.1.jar
+hadoop-client-api/3.2.4//hadoop-client-api-3.2.4.jar
+hadoop-client-runtime/3.2.4//hadoop-client-runtime-3.2.4.jar
+htrace-core4/4.1.0-incubating//htrace-core4-4.1.0-incubating.jar
+javassist/3.28.0-GA//javassist-3.28.0-GA.jar
+javax.servlet-api/3.1.0//javax.servlet-api-3.1.0.jar
+jcl-over-slf4j/1.7.36//jcl-over-slf4j-1.7.36.jar
+jsr305/1.3.9//jsr305-1.3.9.jar
+jul-to-slf4j/1.7.36//jul-to-slf4j-1.7.36.jar
+leveldbjni-all/1.8//leveldbjni-all-1.8.jar
+log4j-1.2-api/2.17.2//log4j-1.2-api-2.17.2.jar
+log4j-api/2.17.2//log4j-api-2.17.2.jar
+log4j-core/2.17.2//log4j-core-2.17.2.jar
+log4j-slf4j-impl/2.17.2//log4j-slf4j-impl-2.17.2.jar
+lz4-java/1.8.0//lz4-java-1.8.0.jar
+metrics-core/3.2.6//metrics-core-3.2.6.jar
+metrics-graphite/3.2.6//metrics-graphite-3.2.6.jar
+metrics-jvm/3.2.6//metrics-jvm-3.2.6.jar
+netty-all/4.1.93.Final//netty-all-4.1.93.Final.jar
+netty-buffer/4.1.93.Final//netty-buffer-4.1.93.Final.jar
+netty-codec-dns/4.1.93.Final//netty-codec-dns-4.1.93.Final.jar
+netty-codec-haproxy/4.1.93.Final//netty-codec-haproxy-4.1.93.Final.jar
+netty-codec-http/4.1.93.Final//netty-codec-http-4.1.93.Final.jar
+netty-codec-http2/4.1.93.Final//netty-codec-http2-4.1.93.Final.jar
+netty-codec-memcache/4.1.93.Final//netty-codec-memcache-4.1.93.Final.jar
+netty-codec-mqtt/4.1.93.Final//netty-codec-mqtt-4.1.93.Final.jar
+netty-codec-redis/4.1.93.Final//netty-codec-redis-4.1.93.Final.jar
+netty-codec-smtp/4.1.93.Final//netty-codec-smtp-4.1.93.Final.jar
+netty-codec-socks/4.1.93.Final//netty-codec-socks-4.1.93.Final.jar
+netty-codec-stomp/4.1.93.Final//netty-codec-stomp-4.1.93.Final.jar
+netty-codec-xml/4.1.93.Final//netty-codec-xml-4.1.93.Final.jar
+netty-codec/4.1.93.Final//netty-codec-4.1.93.Final.jar
+netty-common/4.1.93.Final//netty-common-4.1.93.Final.jar
+netty-handler-proxy/4.1.93.Final//netty-handler-proxy-4.1.93.Final.jar
+netty-handler/4.1.93.Final//netty-handler-4.1.93.Final.jar
+netty-resolver-dns-classes-macos/4.1.93.Final//netty-resolver-dns-classes-macos-4.1.93.Final.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-aarch_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar
+netty-resolver-dns-native-macos/4.1.93.Final/osx-x86_64/netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar
+netty-resolver-dns/4.1.93.Final//netty-resolver-dns-4.1.93.Final.jar
+netty-resolver/4.1.93.Final//netty-resolver-4.1.93.Final.jar
+netty-transport-classes-epoll/4.1.93.Final//netty-transport-classes-epoll-4.1.93.Final.jar
+netty-transport-classes-kqueue/4.1.93.Final//netty-transport-classes-kqueue-4.1.93.Final.jar
+netty-transport-native-epoll/4.1.93.Final/linux-aarch_64/netty-transport-native-epoll-4.1.93.Final-linux-aarch_64.jar
+netty-transport-native-epoll/4.1.93.Final/linux-x86_64/netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-aarch_64/netty-transport-native-kqueue-4.1.93.Final-osx-aarch_64.jar
+netty-transport-native-kqueue/4.1.93.Final/osx-x86_64/netty-transport-native-kqueue-4.1.93.Final-osx-x86_64.jar
+netty-transport-native-unix-common/4.1.93.Final//netty-transport-native-unix-common-4.1.93.Final.jar
+netty-transport-rxtx/4.1.93.Final//netty-transport-rxtx-4.1.93.Final.jar
+netty-transport-sctp/4.1.93.Final//netty-transport-sctp-4.1.93.Final.jar
+netty-transport-udt/4.1.93.Final//netty-transport-udt-4.1.93.Final.jar
+netty-transport/4.1.93.Final//netty-transport-4.1.93.Final.jar
+protobuf-java/3.19.2//protobuf-java-3.19.2.jar
+ratis-client/2.5.1//ratis-client-2.5.1.jar
+ratis-common/2.5.1//ratis-common-2.5.1.jar
+ratis-grpc/2.5.1//ratis-grpc-2.5.1.jar
+ratis-metrics/2.5.1//ratis-metrics-2.5.1.jar
+ratis-netty/2.5.1//ratis-netty-2.5.1.jar
+ratis-proto/2.5.1//ratis-proto-2.5.1.jar
+ratis-server-api/2.5.1//ratis-server-api-2.5.1.jar
+ratis-server/2.5.1//ratis-server-2.5.1.jar
+ratis-shell/2.5.1//ratis-shell-2.5.1.jar
+ratis-thirdparty-misc/1.0.4//ratis-thirdparty-misc-1.0.4.jar
+reflections/0.10.2//reflections-0.10.2.jar
+scala-library/2.12.15//scala-library-2.12.15.jar
+scala-reflect/2.12.15//scala-reflect-2.12.15.jar
+shims/0.9.32//shims-0.9.32.jar
+slf4j-api/1.7.36//slf4j-api-1.7.36.jar
+snakeyaml/1.33//snakeyaml-1.33.jar
+zstd-jni/1.5.2-1//zstd-jni-1.5.2-1.jar
diff --git a/pom.xml b/pom.xml
index 6e7880ca2..a86880529 100644
--- a/pom.xml
+++ b/pom.xml
@@ -705,6 +705,17 @@
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven.plugin.dependency.version}</version>
<executions>
+ <execution>
+ <id>default-cli</id>
+ <goals>
+ <goal>build-classpath</goal>
+ </goals>
+ <configuration>
+ <!-- This includes dependencies with 'runtime' and 'compile'
scopes;
+ see the docs for includeScope for more details -->
+ <includeScope>runtime</includeScope>
+ </configuration>
+ </execution>
<execution>
<id>copy-module-dependencies</id>
<goals>