peterphitran opened a new pull request, #39064:
URL: https://github.com/apache/beam/pull/39064

   Addresses #38925 (preparatory PR1a of 2).
   
   ## What changes
   
   Raises the Java floor for IcebergIO and its dependent modules from **11 to 
17**, in preparation for the upcoming Iceberg **1.11.0** upgrade (PR1b). 
Iceberg 1.11.0 is published as Java 17 bytecode and drops Java 11, so the floor 
has to move first. Splitting the floor raise into its own self-contained, 
CI-green PR keeps the dependency bump (PR1b) minimal and lets CI validate the 
Java 17 floor independently.
   
   **`requireJavaVersion` 11 → 17** (Gradle's JVM-version variant resolution 
will not let a Java 11 module depend on a Java 17 one, so these must move 
together):
   - `sdks/java/io/iceberg/build.gradle`
   - `sdks/java/extensions/sql/iceberg/build.gradle` (depends on the IcebergIO 
module)
   - `examples/java/iceberg/build.gradle` (depends on the IcebergIO module)
   
   **CI workflows** — the five `IO_Iceberg_*` GitHub Actions workflows now set 
`java-version: 17` (they otherwise default to 11 via 
`setup-environment-action`), matching the Delta and Debezium IO workflows:
   - `.github/workflows/IO_Iceberg_Unit_Tests.yml`
   - `.github/workflows/IO_Iceberg_Integration_Tests.yml`
   - `.github/workflows/IO_Iceberg_Integration_Tests_Dataflow.yml`
   - `.github/workflows/IO_Iceberg_Managed_Integration_Tests_Dataflow.yml`
   - `.github/workflows/IO_Iceberg_Performance_Tests.yml`
   
   ## What does NOT change
   
   - **No dependency bump here.** `iceberg_version` stays at 1.10.0; the bump 
to 1.11.0 is PR1b (stacked on this PR).
   - The Java IO expansion service (`sdks/java/io/expansion-service`) is 
already Java 17 on master (#38974), so it needs no change.
   - No public API change. `IcebergIO` is internal, exposed only via 
`Managed.read(ICEBERG)` / `Managed.write(ICEBERG)`.
   
   ## Breaking change
   
   Pipelines using `Managed.read(ICEBERG)` / `Managed.write(ICEBERG)`, and Beam 
SQL's IcebergIO extension, now require a Java 17+ JVM. (The cross-language 
expansion service already required Java 17 as of #38974.) Documented in 
`CHANGES.md`.
   
   ## Verification
   
   - `:sdks:java:io:iceberg:compileJava` and the dependent modules compile on 
JDK 17.
   - The five updated `IO_Iceberg_*` workflows run on Java 17.
   
   ------------------------
   
   Thank you for your contribution! Follow this checklist to help us 
incorporate your contribution quickly and easily:
   
    - [x] Mention the appropriate issue in your description (for example: 
`addresses #123`).
    - [x] Update `CHANGES.md` with noteworthy changes.
    - [ ] If this contribution is large, please file an Apache [Individual 
Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).


-- 
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]

Reply via email to