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>