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

voonhous pushed a commit to tag rfc-105-pre-cleanup
in repository https://gitbox.apache.org/repos/asf/hudi.git

commit db35c3793fdd5c4e77ca8c61f1a2588374d8c7bf
Author: voon <[email protected]>
AuthorDate: Tue May 26 16:35:18 2026 +0800

    fix(trino): gate hudi-client-common/hadoop-common/java-client behind test 
profile
    
    The connector's test sources reference hudi-client-common,
    hudi-hadoop-common and hudi-java-client. Those artifacts only exist when
    the full Hudi reactor is installed; CI's two-stage build installs only
    the runtime dependencies hudi-trino-plugin needs at compile time, so the
    test-scope resolution failed even with -Dmaven.test.skip=true (Maven still
    walks test-scope edges to build the dep graph).
    
    Moves the three Hudi client modules into the hudi-trino-tests profile
    alongside the Trino test-jars, keeping the rule consistent: anything that
    only resolves from a locally-built snapshot lives behind the profile.
---
 hudi-trino-plugin/pom.xml | 96 +++++++++++++++++++++++------------------------
 1 file changed, 46 insertions(+), 50 deletions(-)

diff --git a/hudi-trino-plugin/pom.xml b/hudi-trino-plugin/pom.xml
index a73341963b1f..9ccd44eef81b 100644
--- a/hudi-trino-plugin/pom.xml
+++ b/hudi-trino-plugin/pom.xml
@@ -421,50 +421,6 @@
             <scope>test</scope>
         </dependency>
 
-        <dependency>
-            <groupId>org.apache.hudi</groupId>
-            <artifactId>hudi-client-common</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-                <!-- hudi-timeline-service pulls Jetty + javax.servlet-api; 
Trino's enforcer bans them. -->
-                <exclusion>
-                    <groupId>org.apache.hudi</groupId>
-                    <artifactId>hudi-timeline-service</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.hudi</groupId>
-            <artifactId>hudi-hadoop-common</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <exclusions>
-                <exclusion>
-                    <groupId>*</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.hudi</groupId>
-            <artifactId>hudi-java-client</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.apache.hudi</groupId>
-                    <artifactId>*</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
         <dependency>
             <groupId>org.apache.parquet</groupId>
             <artifactId>parquet-avro</artifactId>
@@ -576,12 +532,11 @@
     <profiles>
         <!--
             Test-only profile. Trino does not publish trino-spi / 
trino-filesystem /
-            trino-hive test-jars to Maven Central, and the published 
trino-main test-jar
-            still requires a matching SPI snapshot for the rest of the test 
classpath.
-            Activate this profile alongside hudi-trino when you have a 
locally-built
-            Trino snapshot in ~/.m2 (build via the Trino source tree and `mvn 
install`).
-            CI builds keep it off so the default reactor stays resolvable 
against
-            Maven Central.
+            trino-hive test-jars to Maven Central, and the Hudi client modules
+            (hudi-client-common, hudi-hadoop-common, hudi-java-client) only 
resolve
+            from a snapshot reactor build. Activate alongside hudi-trino once 
those
+            artifacts are in your local m2. CI keeps the profile off so the 
default
+            build resolves cleanly against Maven Central.
         -->
         <profile>
             <id>hudi-trino-tests</id>
@@ -614,6 +569,47 @@
                     <type>test-jar</type>
                     <scope>test</scope>
                 </dependency>
+                <dependency>
+                    <groupId>org.apache.hudi</groupId>
+                    <artifactId>hudi-client-common</artifactId>
+                    <version>${project.version}</version>
+                    <scope>test</scope>
+                    <exclusions>
+                        <exclusion>
+                            <groupId>*</groupId>
+                            <artifactId>*</artifactId>
+                        </exclusion>
+                        <!-- hudi-timeline-service pulls Jetty + 
javax.servlet-api; Trino's enforcer bans them. -->
+                        <exclusion>
+                            <groupId>org.apache.hudi</groupId>
+                            <artifactId>hudi-timeline-service</artifactId>
+                        </exclusion>
+                    </exclusions>
+                </dependency>
+                <dependency>
+                    <groupId>org.apache.hudi</groupId>
+                    <artifactId>hudi-hadoop-common</artifactId>
+                    <version>${project.version}</version>
+                    <scope>test</scope>
+                    <exclusions>
+                        <exclusion>
+                            <groupId>*</groupId>
+                            <artifactId>*</artifactId>
+                        </exclusion>
+                    </exclusions>
+                </dependency>
+                <dependency>
+                    <groupId>org.apache.hudi</groupId>
+                    <artifactId>hudi-java-client</artifactId>
+                    <version>${project.version}</version>
+                    <scope>test</scope>
+                    <exclusions>
+                        <exclusion>
+                            <groupId>org.apache.hudi</groupId>
+                            <artifactId>*</artifactId>
+                        </exclusion>
+                    </exclusions>
+                </dependency>
             </dependencies>
         </profile>
     </profiles>

Reply via email to