Skip to content

Upgrade to the latest version of core and move the repository to Java17#3263

Merged
chrisdennis merged 15 commits intoehcache:masterfrom
myronkscott:update_core
Sep 11, 2025
Merged

Upgrade to the latest version of core and move the repository to Java17#3263
chrisdennis merged 15 commits intoehcache:masterfrom
myronkscott:update_core

Conversation

@myronkscott
Copy link
Copy Markdown
Contributor

This is a quick and dirty port to the latest version of core and move the repo to Java17. This is not ready for merge by any means. The purpose is to share ideas. All changes were made to get to the quickest clean build with no thought to appropriate changes to the build system.

@myronkscott myronkscott requested a review from chrisdennis May 28, 2025 15:42
@myronkscott myronkscott requested a review from mathieucarbou May 28, 2025 16:01
@myronkscott myronkscott force-pushed the update_core branch 4 times, most recently from e3b3523 to 9041c81 Compare May 28, 2025 23:27
@mathieucarbou
Copy link
Copy Markdown
Member

Adding as reference this PR also: #3259

Comment thread azure-pipelines.yml Outdated
Comment thread build-logic/src/main/java/org/ehcache/build/conventions/JavaBaseConvention.java Outdated
* and Striped64. See their internal docs for explanation.
*/
@sun.misc.Contended
static final class CounterCell {
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.

@chrisdennis mentioned that we should ideally grab the new changes for this map from the JDK.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Java17 specific PR?

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.

that's the title of this one ;-)

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.

@chrisdennis : I did not check for a new ConcurrentHashMap implementation... Should we grab the new one from the JDK or keep this one, and eventually changing it later ?

Copy link
Copy Markdown
Member

@mathieucarbou mathieucarbou left a comment

Choose a reason for hiding this comment

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

some little comments and questions :-)

@myronkscott myronkscott force-pushed the update_core branch 3 times, most recently from 4d136b3 to 11eb7a4 Compare July 21, 2025 22:23
@myronkscott myronkscott marked this pull request as ready for review August 28, 2025 21:20
@mathieucarbou-ibm
Copy link
Copy Markdown
Member

@chrisdennis please review this PR ;-)

project.getExtensions().getExtraProperties().set("testJava", testJava);

project.getExtensions().configure(JavaPluginExtension.class, java -> {
java.setSourceCompatibility(JavaVersion.VERSION_1_8);
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.

From memory this should be setRelease(...) now?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I'm not seeing this in the API. What am I missing?

Comment thread build-logic/src/main/java/org/ehcache/build/plugins/VoltronPlugin.java Outdated
Comment thread clustered/ehcache-clustered/build.gradle Outdated
Comment thread clustered/ehcache-clustered/build.gradle Outdated
Comment thread clustered/integration-test/build.gradle Outdated
Comment thread ehcache-impl/build.gradle Outdated
options.compilerArgs = ['-Xlint:all']
}

afterEvaluate {
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.

What drives the need for afterEvaluate(...) here?

Copy link
Copy Markdown
Member

@mathieucarbou-ibm mathieucarbou-ibm Sep 3, 2025

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
Member

@mathieucarbou-ibm mathieucarbou-ibm Sep 3, 2025

Choose a reason for hiding this comment

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

I suppose this is to access the classes filter that is not available otherwise (https://github.com/spotbugs/spotbugs-gradle-plugin?tab=readme-ov-file#configure-spotbugs-plugin) ?

Comment thread gradle.properties
terracottaCoreVersion = 5.10.15
terracottaPassthroughTestingVersion = 1.9.1
terracottaPlatformVersion = 5.11.1
terracottaApisVersion = 5.12.+
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.

This should be a fixed version right?

Copy link
Copy Markdown
Member

@mathieucarbou-ibm mathieucarbou-ibm Sep 3, 2025

Choose a reason for hiding this comment

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

Copied what Myron has set in platform on the ground that this was discussed already. Looks ok to me to allow this for api.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Because API is in the same project as runtime, The publishing logic requires us to publish everything api and runtime. This allows us to float the api and bring it in with the runtime. If we fix the API version, build and publishing logic in core is very unorthodox.

@chrisdennis chrisdennis self-requested a review September 11, 2025 12:49
@chrisdennis chrisdennis merged commit adaa610 into ehcache:master Sep 11, 2025
4 checks passed
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.

4 participants