kevinjqliu commented on code in PR #18658: URL: https://github.com/apache/iceberg/pull/18658#discussion_r4381214628
########## site/docs/how-to-release.md: ########## @@ -88,6 +88,83 @@ Note, creating a milestone in github requires a committer. However, a non-commit The release status is discussed during each community sync meeting. Release manager should join the meeting to report status and discuss any release blocker. +### Review bundled dependency licenses + +Some Iceberg artifacts, such as the Spark and Flink runtime JARs, bundle third-party dependencies. Each of these [bundled modules](#bundled-modules) has its own `LICENSE` and `NOTICE` files that must cover every dependency it ships. Before building the release candidate, please make sure these files are up to date: + +1. Find the dependency changes since the previous release: + + ```bash + git fetch apache main --tags + git diff apache-iceberg-<PREVIOUS_VERSION> apache/main -- '**/runtime-deps.txt' + ``` + + Each `runtime-deps.txt` file lists the dependencies bundled by the module in the same directory. Lines starting with `+` are added or upgraded dependencies, and lines starting with `-` are removed or replaced ones. + +2. Update the `LICENSE` and `NOTICE` files of each affected module and open a PR against `main`. See [Updating LICENSE and NOTICE](#updating-license-and-notice). + +3. Check with PMC members to verify the changes. See [Validating with PMC members](#validating-with-pmc-members). + +#### Bundled modules + +Each directory contains the `LICENSE` and `NOTICE` files for its artifact. + +* Spark runtime + * `iceberg-spark-runtime-3.5_2.12` and `iceberg-spark-runtime-3.5_2.13`: `spark/v3.5/spark-runtime` + * `iceberg-spark-runtime-4.0_2.13`: `spark/v4.0/spark-runtime` + * `iceberg-spark-runtime-4.1_2.13`: `spark/v4.1/spark-runtime` + * `iceberg-spark-runtime-4.2_2.13`: `spark/v4.2/spark-runtime` +* Flink runtime + * `iceberg-flink-runtime-1.20`: `flink/v1.20/flink-runtime` + * `iceberg-flink-runtime-2.2`: `flink/v2.2/flink-runtime` + * `iceberg-flink-runtime-2.3`: `flink/v2.3/flink-runtime` +* Cloud bundles + * `iceberg-aws-bundle`: `aws-bundle` + * `iceberg-azure-bundle`: `azure-bundle` + * `iceberg-gcp-bundle`: `gcp-bundle` +* Kafka Connect runtime + * `iceberg-kafka-connect-runtime` distribution: `kafka-connect/kafka-connect-runtime/main` + * `iceberg-kafka-connect-runtime-hive` distribution: `kafka-connect/kafka-connect-runtime/hive` Review Comment: i noticed that the hive distribution doesnt have its own `runtime-deps.txt` file, we should add it. its also lacks the proper LICENSE and NOTICE file fix (#18019 only fixes main) ########## site/docs/how-to-release.md: ########## @@ -88,6 +88,83 @@ Note, creating a milestone in github requires a committer. However, a non-commit The release status is discussed during each community sync meeting. Release manager should join the meeting to report status and discuss any release blocker. +### Review bundled dependency licenses + +Some Iceberg artifacts, such as the Spark and Flink runtime JARs, bundle third-party dependencies. Each of these [bundled modules](#bundled-modules) has its own `LICENSE` and `NOTICE` files that must cover every dependency it ships. Before building the release candidate, please make sure these files are up to date: + +1. Find the dependency changes since the previous release: + + ```bash + git fetch apache main --tags + git diff apache-iceberg-<PREVIOUS_VERSION> apache/main -- '**/runtime-deps.txt' + ``` + + Each `runtime-deps.txt` file lists the dependencies bundled by the module in the same directory. Lines starting with `+` are added or upgraded dependencies, and lines starting with `-` are removed or replaced ones. + +2. Update the `LICENSE` and `NOTICE` files of each affected module and open a PR against `main`. See [Updating LICENSE and NOTICE](#updating-license-and-notice). + +3. Check with PMC members to verify the changes. See [Validating with PMC members](#validating-with-pmc-members). + +#### Bundled modules + +Each directory contains the `LICENSE` and `NOTICE` files for its artifact. + +* Spark runtime + * `iceberg-spark-runtime-3.5_2.12` and `iceberg-spark-runtime-3.5_2.13`: `spark/v3.5/spark-runtime` + * `iceberg-spark-runtime-4.0_2.13`: `spark/v4.0/spark-runtime` + * `iceberg-spark-runtime-4.1_2.13`: `spark/v4.1/spark-runtime` + * `iceberg-spark-runtime-4.2_2.13`: `spark/v4.2/spark-runtime` +* Flink runtime + * `iceberg-flink-runtime-1.20`: `flink/v1.20/flink-runtime` + * `iceberg-flink-runtime-2.2`: `flink/v2.2/flink-runtime` + * `iceberg-flink-runtime-2.3`: `flink/v2.3/flink-runtime` +* Cloud bundles + * `iceberg-aws-bundle`: `aws-bundle` + * `iceberg-azure-bundle`: `azure-bundle` + * `iceberg-gcp-bundle`: `gcp-bundle` +* Kafka Connect runtime + * `iceberg-kafka-connect-runtime` distribution: `kafka-connect/kafka-connect-runtime/main` + * `iceberg-kafka-connect-runtime-hive` distribution: `kafka-connect/kafka-connect-runtime/hive` Review Comment: We dont publish either yet ([publishing is currently disabled](https://github.com/apache/iceberg/blob/main/kafka-connect/build.gradle)). #15212 tracks adding the ZIP to the release process. We need to fix up both sets of LICENSE and NOTICE files before shipping -- 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]
