bitflicker64 commented on code in PR #779:
URL:
https://github.com/apache/hugegraph-toolchain/pull/779#discussion_r4191337195
##########
.github/workflows/loader-ci.yml:
##########
@@ -36,7 +29,7 @@ jobs:
DB_DATABASE: load_test
strategy:
matrix:
- JAVA_VERSION: ['11']
+ JAVA_VERSION: ['17']
Review Comment:
Important: With every module on JDK 17, nothing in the required path
compiles Toolchain code with JDK 11, but `hugegraph-loader/Dockerfile` and
`hugegraph-hubble/Dockerfile` still build from
`maven:3.9.0-eclipse-temurin-11`. The root pom compiles with
`<source>1.8</source>`/`<target>1.8</target>` and no `--release`, so javac 17
accepts calls to APIs newer than 11. I checked this locally: a class that calls
`List.of(1).stream().toList()` compiles with javac 17 at `-source 1.8 -target
1.8` and fails with javac 11 (`cannot find symbol ... Stream`).
`select_images()` deliberately skips ordinary source edits
(ci-policy.py:147-149). So a Loader or Client change like that passes
`affected-module-tests` and leaves both images unbuildable, and the change
shows up only at release time. Before this PR, loader-ci and hubble-ci compiled
on Java 11 and would have failed. This is not the same as the runtime-lane
trade-off in docs/ci.md: here the image build itself breaks. Please add an
API-level
check, for example `-Dmaven.compiler.release=8` (or 11) on one Compile step,
or select the images when main Java sources under client, loader or hubble-be
change.
--
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]