bharos opened a new pull request, #13257: URL: https://github.com/apache/gravitino/pull/13257
### What changes were proposed in this pull request? Merge `META-INF/LICENSE` and `META-INF/NOTICE` into one entry each in shaded JARs. Keep Gravitino's legal document first, remove byte-identical copies, and retain every distinct dependency document. Apply the transformer to all ShadowJar tasks and add runtime-JAR regression tests. ### Why are the changes needed? The 1.3.1 RC1 review reported duplicate legal entries in staged runtime and bundle JARs. The published Java runtime JAR contains two LICENSE entries and two NOTICE entries. Excluding duplicates would discard distinct dependency license or notice text. Related to #12755 and #13253. Complements #13254; this PR fixes packaging rather than the attribution inventory. It does not close the release epic. ### Does this PR introduce _any_ user-facing change? Shaded JARs contain a single combined LICENSE and NOTICE entry. No API or configuration changes. ### How was this patch tested? Using JDK 17: ```bash ./gradlew spotlessApply ./gradlew :clients:client-java-runtime:test :bundles:iceberg-gcp-bundle:shadowJar :maintenance:jobs:shadowJar -PskipITs --build-cache ``` Both new regression tests pass. They check entry uniqueness, Gravitino content ordering and deduplication, and preservation of dependency legal text. As a negative control, both tests fail when pointed at the published RC1 Java runtime JAR, including the expected two LICENSE entries instead of one. Also inspected the rebuilt Java runtime, Iceberg GCP bundle and jobs JAR: each has exactly one LICENSE and NOTICE, with Gravitino's document first and present once. `git diff --check` passes. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
