wombatu-kun opened a new pull request, #16543: URL: https://github.com/apache/iceberg/pull/16543
Closes #16396 Follow-up to the LICENSE/NOTICE findings from the 1.11.0 RC4 vote thread: https://lists.apache.org/thread/ddw8cvyrvypoolmzhd673s5wglhdpd5f ## Strip duplicate license metadata from shaded jars The shaded bundle/runtime jars add Iceberg's own LICENSE/NOTICE at the jar root via `from(projectDir)`, but the shadow plugin also merges the `META-INF/LICENSE*` / `META-INF/NOTICE*` files carried by the shaded dependencies, duplicating the metadata. This excludes those dependency-provided files from the `shadowJar` of the modules flagged in the thread — `iceberg-aws-bundle`, `iceberg-azure-bundle`, `iceberg-gcp-bundle`, and `iceberg-flink-runtime` (1.20/2.0/2.1) — keeping only the Iceberg LICENSE/NOTICE at the jar root. ## Add missing third-party NOTICE attributions Per Apache License 2.0 §4(d), redistributed/derived works carry the attribution notices from a bundled dependency's own NOTICE file: - Root `NOTICE`: add Presto and Delta Lake attributions for the code already listed under those projects in the root `LICENSE`. - `aws-bundle/NOTICE`: add AWS Common Runtime (CRT) for Java and AWS EventStream for Java, whose notices differ from the regular AWS SDK notice already present. - `azure-bundle/NOTICE`: add the Project Reactor (reactor-core, reactor-netty) copyright. ## Notes - reactor-core/reactor-netty ship no NOTICE file (neither in their jars nor their repos), so a copyright line is added rather than copied NOTICE text. - Presto's only notice file covers its t-digest module, which Iceberg does not include, so only a minimal copyright attribution is added. - Out of scope: a few dependencies (e.g. analyticsaccelerator-s3) bundle their own root-level LICENSE/NOTICE that the shadow plugin merges through a path that bypasses Gradle's duplicate handling; their content is already aggregated into the bundle NOTICE. ## Tests Built the four shaded jars with the build cache disabled and confirmed via `unzip` that no `META-INF/LICENSE*` / `META-INF/NOTICE*` entries remain and that the new NOTICE content is present in the jar root. `checkRuntimeDeps` remains green for all four modules. No Java sources changed. -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
