Skip to content

some nightly tests with Java 25 - #1887

Merged
raboof merged 4 commits into
apache:mainfrom
pjfanning:java25
Nov 15, 2025
Merged

some nightly tests with Java 25#1887
raboof merged 4 commits into
apache:mainfrom
pjfanning:java25

Conversation

@pjfanning

@pjfanning pjfanning commented Jun 7, 2025

Copy link
Copy Markdown
Member

@pjfanning
pjfanning marked this pull request as draft June 7, 2025 12:15
@He-Pin

He-Pin commented Jul 30, 2025

Copy link
Copy Markdown
Member

Cool, we should make 2.0.0 release jdk25 ready.

@mkurz

mkurz commented Sep 16, 2025

Copy link
Copy Markdown
Contributor

Java 25 officially released: https://mail.openjdk.org/pipermail/announce/2025-September/000360.html

@EmadAlblueshi

Copy link
Copy Markdown

Cool, we should make 2.0.0 release jdk25 ready.

That would be great 👍🏻

@pjfanning

pjfanning commented Sep 16, 2025

Copy link
Copy Markdown
Member Author

The open issues are at https://github.com/apache/pekko/issues?q=state%3Aopen%20label%3Ajava24%2F25

The TLDR is that Java 24 and 25 compilers seem to compile Pekko code but it doesn't work as normal at runtime. If we build Pekko with an older Java compiler (eg Java 17), the compiled classes work at runtime with Java 24 and 25 - as far as I can see.

If anyone has time to investigate why the Java compiler is behaving like this, feel free to take this on - it would be very useful.

@He-Pin

He-Pin commented Sep 16, 2025

Copy link
Copy Markdown
Member

it should be -release 17

@pjfanning

Copy link
Copy Markdown
Member Author

it should be -release 17

We have flags like that in the build but still we end up with invalid classes that cause pattern matching issues (as far as I recall).

@pjfanning

Copy link
Copy Markdown
Member Author

with Java 25-ea (GitHub CI does seem to have a Temurin distro for Java 25 yet), we get Scala code gen issues (similar issues in pekko-http build).

[info] Generating 'ZipLatestWith.scala'
[info] Generating 'UnzipWith.scala'
[info] Generating 'ZipWith.scala'
[info] Generating 'GraphCreate.scala'
[info] Generating 'FanInShapeN.scala'
[info] Generating 'FanOutShapeN.scala'
[info] Generating 'GraphApply.scala'
[info] Generating 'ZipLatestWithApply.scala'
[info] Generating 'UnzipWithApply.scala'
[info] Generating 'ZipWithApply.scala'
[info] Generating 'Tuples.scala'
[info] Generating 'Functions.scala'
[info] compiling 203 Scala sources and 27 Java sources to /home/runner/work/pekko/pekko/actor/target/scala-2.13/classes ...
[error] Error while emitting SameThreadExecutionContext.scala
[error] Unsupported class file major version 69
[error] Error while emitting ScalaBatchable.scala
[error] Unsupported class file major version 69
[error] Error while emitting ByteIterator.scala
[error] assertion failed: ClassBType.info not yet assigned: Ljava/lang/Object;

@He-Pin

He-Pin commented Sep 30, 2025

Copy link
Copy Markdown
Member

Should we retry this?

@pjfanning

Copy link
Copy Markdown
Member Author

#1998 still seems to be an issue - 44 tests failed for pekko-remote with Artery in latest run here.
Otherwise, there are some failures in other tests but not as bad as before.

@pjfanning pjfanning changed the title [EXPERIMENT] try Java 25-ea [EXPERIMENT] try running some tests with Java 25 Nov 14, 2025
@pjfanning pjfanning changed the title [EXPERIMENT] try running some tests with Java 25 some nightly tests with Java 25 Nov 14, 2025
@pjfanning
pjfanning marked this pull request as ready for review November 14, 2025 17:36
Comment on lines -163 to -164
# Docs generation requires JDK 11.
if: ${{ matrix.javaVersion == 11 }}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

huh ;)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

docs build ok with Java 17 now - after Paradox fixes

- name: Publish
# Publish (osgi bundle) not working with JDK 17, issue #31132
if: ${{ matrix.javaVersion == 11 }}
if: ${{ matrix.javaVersion == 17 }}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

so this was fixed? I guess we'll see :)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if this fails, we'll have to fix it or drop this testing altogether - it is effectively disabled prior to this change because Java 17 is the min version used in the build

@raboof
raboof merged commit 564b220 into apache:main Nov 15, 2025
9 checks passed
@pjfanning
pjfanning deleted the java25 branch November 15, 2025 13:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants