This is an automated email from the ASF dual-hosted git repository.

yuqi4733 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gravitino.git


The following commit(s) were added to refs/heads/main by this push:
     new 739e069807 [#9365] fix(lance): Exclude lance related dependencies to 
reduce the size of the package (#9368)
739e069807 is described below

commit 739e0698074e221f34a7c1ac3a956e808a21d615
Author: Jerry Shao <[email protected]>
AuthorDate: Fri Dec 5 14:34:04 2025 +0800

    [#9365] fix(lance): Exclude lance related dependencies to reduce the size 
of the package (#9368)
    
    ### What changes were proposed in this pull request?
    
    Exclude various unnecessary lance related dependencies to reduce the
    size of the package.
    
    ### Why are the changes needed?
    
    1. For catalog-lakehosue-generic, exclude the runtime lance dependency
    as it is already included in the core.
    2. For lance-common and lance-rest-server, exclude the unnecessary lance
    introduced packages to reduce the size.
    
    Fix: #9365
    
    ### Does this PR introduce _any_ user-facing change?
    
    No.
    
    ### How was this patch tested?
    
    Existing tests.
---
 catalogs/catalog-lakehouse-generic/build.gradle.kts | 11 +++++------
 core/build.gradle.kts                               |  1 +
 gradle/libs.versions.toml                           |  2 +-
 lance/lance-common/build.gradle.kts                 | 16 ++++++++++++++--
 lance/lance-rest-server/build.gradle.kts            | 16 +++++++++++-----
 5 files changed, 32 insertions(+), 14 deletions(-)

diff --git a/catalogs/catalog-lakehouse-generic/build.gradle.kts 
b/catalogs/catalog-lakehouse-generic/build.gradle.kts
index 484514bede..220ccb5738 100644
--- a/catalogs/catalog-lakehouse-generic/build.gradle.kts
+++ b/catalogs/catalog-lakehouse-generic/build.gradle.kts
@@ -35,21 +35,19 @@ dependencies {
   implementation(project(":core")) {
     exclude("*")
   }
-  implementation(project(":lance:lance-common"))
+  implementation(project(":lance:lance-common")) {
+    exclude("*")
+  }
 
   implementation(libs.bundles.log4j)
-  implementation(libs.cglib)
-  implementation(libs.commons.collections4)
   implementation(libs.commons.io)
-  implementation(libs.commons.lang3)
   implementation(libs.guava)
-  implementation(libs.lance)
 
   annotationProcessor(libs.lombok)
 
+  compileOnly(libs.lance) // This will be provided by core module at runtime
   compileOnly(libs.lombok)
 
-  testImplementation(project(":catalogs:catalog-jdbc-common", "testArtifacts"))
   testImplementation(project(":clients:client-java"))
   testImplementation(project(":integration-test-common", "testArtifacts"))
   testImplementation(project(":server"))
@@ -57,6 +55,7 @@ dependencies {
 
   testImplementation(libs.junit.jupiter.api)
   testImplementation(libs.junit.jupiter.params)
+  testImplementation(libs.lance) // Included in the test runtime classpath for 
test only
   testImplementation(libs.mockito.core)
   testImplementation(libs.mysql.driver)
   testImplementation(libs.postgresql.driver)
diff --git a/core/build.gradle.kts b/core/build.gradle.kts
index fb6a0c8968..be5ecdf58e 100644
--- a/core/build.gradle.kts
+++ b/core/build.gradle.kts
@@ -52,6 +52,7 @@ dependencies {
     exclude(group = "org.apache.commons", module = "commons-lang3") // 
provided by gravitino
     exclude(group = "org.junit.jupiter", module = "*") // provided by test 
scope
     exclude(group = "com.fasterxml.jackson.jaxrs", module = 
"jackson-jaxrs-json-provider") // using gravitino's version
+    exclude(group = "org.apache.httpcomponents.client5", module = "*") // 
provided by gravitino
   }
   implementation(libs.mybatis)
 
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index 6384a36bc4..3c4f2cf403 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -29,7 +29,7 @@ lombok = "1.18.20"
 slf4j = "2.0.16"
 log4j = "2.24.3"
 lance = "0.39.0"
-lance-namespace = "0.0.19"
+lance-namespace = "0.0.20"
 jetty = "9.4.51.v20230217"
 jersey = "2.41"
 mockito = "4.11.0"
diff --git a/lance/lance-common/build.gradle.kts 
b/lance/lance-common/build.gradle.kts
index e3a669212c..e0c7546a6a 100644
--- a/lance/lance-common/build.gradle.kts
+++ b/lance/lance-common/build.gradle.kts
@@ -25,8 +25,8 @@ plugins {
 }
 
 dependencies {
-  implementation(project(":clients:client-java"))
   implementation(project(":api"))
+  implementation(project(":clients:client-java"))
   implementation(project(":common")) {
     exclude("*")
   }
@@ -34,10 +34,22 @@ dependencies {
     exclude("*")
   }
 
-  implementation(libs.guava)
   implementation(libs.commons.lang3)
+  implementation(libs.guava)
+  implementation(libs.jackson.annotations)
+  implementation(libs.jackson.databind)
+  implementation(libs.jackson.datatype.jdk8)
+  implementation(libs.jackson.datatype.jsr310)
+  implementation(libs.jackson.jaxrs.json.provider)
   implementation(libs.lance.namespace.core) {
     exclude(group = "com.lancedb", module = "lance-core")
+    exclude(group = "com.google.guava", module = "guava") // provided by 
gravitino
+    exclude(group = "com.fasterxml.jackson.core", module = "*") // provided by 
gravitino
+    exclude(group = "com.fasterxml.jackson.datatype", module = "*") // 
provided by gravitino
+    exclude(group = "com.fasterxml.jackson.jaxrs", module = 
"jackson-jaxrs-json-provider") // using gravitino's version
+    exclude(group = "org.apache.commons", module = "commons-lang3") // 
provided by gravitino
+    exclude(group = "org.apache.opendal", module = "*")
+    exclude(group = "org.junit.jupiter", module = "*")
   }
   implementation(libs.slf4j.api)
 
diff --git a/lance/lance-rest-server/build.gradle.kts 
b/lance/lance-rest-server/build.gradle.kts
index a74fe4819d..c2c4065b5e 100644
--- a/lance/lance-rest-server/build.gradle.kts
+++ b/lance/lance-rest-server/build.gradle.kts
@@ -32,29 +32,35 @@ dependencies {
   implementation(project(":core")) {
     exclude("*")
   }
+  implementation(project(":lance:lance-common"))
   implementation(project(":server-common")) {
     exclude("*")
   }
 
-  implementation(project(":lance:lance-common"))
-  implementation(libs.lance)
-  implementation(libs.commons.lang3)
-
   implementation(libs.bundles.jetty)
   implementation(libs.bundles.jersey)
+  implementation(libs.bundles.jwt)
   implementation(libs.bundles.log4j)
   implementation(libs.bundles.metrics)
   implementation(libs.bundles.prometheus)
   implementation(libs.commons.lang3)
   implementation(libs.lance.namespace.core) {
     exclude(group = "com.lancedb", module = "lance-core")
+    exclude(group = "com.google.guava", module = "guava") // provided by 
gravitino
+    exclude(group = "com.fasterxml.jackson.core", module = "*") // provided by 
gravitino
+    exclude(group = "com.fasterxml.jackson.datatype", module = "*") // 
provided by gravitino
+    exclude(group = "com.fasterxml.jackson.jaxrs", module = 
"jackson-jaxrs-json-provider") // using gravitino's version
+    exclude(group = "org.apache.commons", module = "commons-lang3") // 
provided by gravitino
+    exclude(group = "org.apache.opendal", module = "*")
+    exclude(group = "org.junit.jupiter", module = "*")
   }
-  implementation(libs.metrics.jersey2)
   implementation(libs.guava)
   implementation(libs.jackson.annotations)
   implementation(libs.jackson.databind)
   implementation(libs.jackson.datatype.jdk8)
   implementation(libs.jackson.datatype.jsr310)
+  implementation(libs.jackson.jaxrs.json.provider)
+  implementation(libs.metrics.jersey2)
 
   testImplementation(project(":clients:client-java"))
   testImplementation(project(":server"))

Reply via email to