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

vinishjail97 pushed a commit to branch 701-single-license-per-jar-main
in repository https://gitbox.apache.org/repos/asf/incubator-xtable.git


The following commit(s) were added to 
refs/heads/701-single-license-per-jar-main by this push:
     new d922f6cd [701] Broaden the shade license excludes to be 
dependency-tree independent
d922f6cd is described below

commit d922f6cd921e86b66317986da1182cc22c32502b
Author: Vinish Reddy <[email protected]>
AuthorDate: Thu Jul 30 16:49:10 2026 -0700

    [701] Broaden the shade license excludes to be dependency-tree independent
    
    Verifying the previous commit on main surfaced LICENSE-junit.txt in the 
root of
    xtable-hive-metastore-bundled, which branch-0.4 does not produce: the two
    branches resolve different junit versions, and only one of them ships that 
file.
    
    Enumerating the suffixes seen on one branch is therefore not enough, so the
    excludes now cover LICENSE*, NOTICE* and COPYING* at the jar root and
    META-INF/*LICENSE* / META-INF/*NOTICE* rather than a fixed list of 
extensions.
    
    Our own files are unaffected: META-INF/LICENSE and META-INF/NOTICE are 
written by
    IncludeResourceTransformer after filtering, and META-INF/licenses/ sits in 
a path
    segment of its own so none of these patterns can match it. Confirmed by 
rebuilding
    every shaded module from clean and checking that the bundled jars still 
carry the
    dependency listing (56 coordinates for aws, 183 for hive-metastore, 13 for
    hudi-support-extensions, 8 for spark-runtime) while the non-shaded jars 
still
    carry the plain 202 line Apache-2.0 text.
---
 pom.xml | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

diff --git a/pom.xml b/pom.xml
index c14697dc..05b06f19 100644
--- a/pom.xml
+++ b/pom.xml
@@ -702,20 +702,26 @@
                                               the shaded jars also carried 
each dependency's own copy in
                                               whatever location it happened to 
ship it, which made the
                                               licensing of the bundle very 
hard to review.
+
+                                              These are deliberately broad 
rather than an enumeration of
+                                              the suffixes seen so far: 
dependencies use names like
+                                              LICENSE.txt, LICENSE-junit.txt, 
META-INF/ASM_LICENSE.txt and
+                                              META-INF/NOTICE.markdown, and 
which of them show up changes
+                                              with the dependency tree, so 
branch-0.4 and main did not even
+                                              produce the same set. Our own 
META-INF/LICENSE and
+                                              META-INF/NOTICE are written by 
IncludeResourceTransformer, and
+                                              META-INF/licenses/ has a path 
segment of its own, so none of
+                                              these patterns can match what we 
ship.
                                             -->
                                             <exclude>about_files/**</exclude>
                                             <exclude>license/**</exclude>
                                             <exclude>licenses/**</exclude>
                                             
<exclude>META-INF/license/**</exclude>
-                                            
<exclude>META-INF/*LICENSE*.txt</exclude>
-                                            
<exclude>META-INF/*NOTICE*.txt</exclude>
-                                            
<exclude>META-INF/LICENSE.md</exclude>
-                                            
<exclude>META-INF/NOTICE.md</exclude>
-                                            
<exclude>META-INF/NOTICE.markdown</exclude>
-                                            <exclude>LICENSE.txt</exclude>
-                                            <exclude>LICENSE.md</exclude>
-                                            <exclude>NOTICE.txt</exclude>
-                                            <exclude>NOTICE.md</exclude>
+                                            
<exclude>META-INF/*LICENSE*</exclude>
+                                            
<exclude>META-INF/*NOTICE*</exclude>
+                                            <exclude>LICENSE*</exclude>
+                                            <exclude>NOTICE*</exclude>
+                                            <exclude>COPYING*</exclude>
                                         </excludes>
                                     </filter>
                                 </filters>

Reply via email to