Skip to content

Compile client modules with Java 17 compatibility#3712

Merged
adutra merged 2 commits intoapache:mainfrom
adutra:java-17
Feb 10, 2026
Merged

Compile client modules with Java 17 compatibility#3712
adutra merged 2 commits intoapache:mainfrom
adutra:java-17

Conversation

@adutra
Copy link
Contributor

@adutra adutra commented Feb 9, 2026

As agreed on the ML, this PR upgrades Java minimum compatibility level (Javac's --release flag) to 17.

This PR also fixes the errorprone errors about instanceof with pattern matching..

Checklist

  • 🛡️ Don't disclose security issues! (contact [email protected])
  • 🔗 Clearly explained why the changes are needed, or linked related issues: Fixes #
  • 🧪 Added/updated tests with good coverage, or manually tested (and explained how)
  • 💡 Added comments for complex logic
  • 🧾 Updated CHANGELOG.md (if needed)
  • 📚 Updated documentation in site/content/in-dev/unreleased (if needed)

Copy link
Contributor

@flyrain flyrain left a comment

Choose a reason for hiding this comment

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

+1. Thanks a lot for the change, @adutra !

@github-project-automation github-project-automation bot moved this from PRs In Progress to Ready to merge in Basic Kanban Board Feb 9, 2026
@adutra adutra merged commit ba048c8 into apache:main Feb 10, 2026
29 of 30 checks passed
@github-project-automation github-project-automation bot moved this from Ready to merge to Done in Basic Kanban Board Feb 10, 2026
@adutra adutra deleted the java-17 branch February 10, 2026 08:45
@adutra adutra mentioned this pull request Feb 10, 2026
snazy added a commit to snazy/polaris that referenced this pull request Feb 10, 2026
Since apache#3712 has been merged, we can bump JUnit to version 6.

This change also tackes a few deprecation warnings.
@snazy snazy mentioned this pull request Feb 10, 2026
snazy added a commit to snazy/polaris that referenced this pull request Feb 10, 2026
Since apache#3712 has been merged, we can bump JUnit to version 6.

This change also tackes a few deprecation warnings.
snazy added a commit to snazy/polaris that referenced this pull request Feb 10, 2026
Since apache#3712 has been merged, we can bump JUnit to version 6.

This change also tackes a few deprecation warnings.
snazy added a commit to snazy/polaris that referenced this pull request Feb 11, 2026
* "Stale" job: don't close stale issues (apache#3683)

This PR also fixes the configuration and upgrades the action to the latest version.

* Fix integration-tests after apache#3704 (apache#3711)

Short story: This change fixes the int-tests in `:polaris-runtime-service`.

Long story is this:
In `:polaris-runtime-service` we intentionally declare "just" a `platform(libs.quarkus.bom)` dependency, because of the `:polaris-spark-integration-*` module.
It is however generally recommended by Quarkus to _only_ use `enforcedPlatform(libs.quarkus.bom)` to effectively prevent breaking changes coming from transitive dependencies. Which is exactly what happend after apache#3704.

Why did CI not catch this issue?
The answer is pretty simple: The effective Gradle task inputs, including the `intTestRuntimeClasspath` did not change. So the previously cached test outcomes could be reused, and the int-tests did not run.
Just adding the `runtimeClasspath` as another task-input of the `intTest` may _not_ work as intended.

Why does _removing_ `implementation(platform(libs.opentelemetry.bom))` help?
Simply because that lets the dependencies fall back to to the declared transitive dependencies. We do not have direct dependencies to OTel.

The correct fix here _would_ be to use `implementation(enforcedPlatform(libs.quarkus.bom))`, but that breaks the Spark plugin integration tests.

There is a better alternative: Let the Spark plugin tests leverage polaris-apprunner, which is meant for exactly the use case of effectively decoupling some module from the build requirements of a Quarkus application.

* CI: fix missing Gradle build scans (apache#3709)

Publishing the Gradle build scans requires the `DEVELOCITY_ACCESS_KEY` secret. For workflow-calls, each secret to be propagated to a called workflow must be explicitly defined.

This change propagates the secrets from `ci-main.yml` to the called `ci.yml`.

* Add Polaris Community Meetings for 2026-01-22 and 2026-02-05 (apache#3715)

* Add location propertiesfrom TableMetadata into Table entity internalProperties (apache#3226)

* Compile client modules with Java 17 compatibility (apache#3712)

* Last merged commit ba048c8

---------

Co-authored-by: Alexandre Dutra <[email protected]>
Co-authored-by: JB Onofré <[email protected]>
Co-authored-by: Prashant Singh <[email protected]>
snazy added a commit to snazy/polaris that referenced this pull request Feb 12, 2026
Since apache#3712 has been merged, we can bump JUnit to version 6.

This change also tackes a few deprecation warnings.
snazy added a commit that referenced this pull request Feb 12, 2026
Since #3712 has been merged, we can bump JUnit to version 6.
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.

7 participants