Skip to content

Downgrade checkstyle for Java 17 support#233

Merged
krisstern merged 1 commit into
jenkinsci:masterfrom
MarkEWaite:downgrade-checkstyle-for-java-17
May 23, 2026
Merged

Downgrade checkstyle for Java 17 support#233
krisstern merged 1 commit into
jenkinsci:masterfrom
MarkEWaite:downgrade-checkstyle-for-java-17

Conversation

@MarkEWaite

@MarkEWaite MarkEWaite commented May 23, 2026

Copy link
Copy Markdown
Contributor

Downgrade checkstyle for Java 17 support

Checkstyle 13 requires Java 21 or newer.

We can't use checkstyle 13 until the plugin requires Java 21 or newer. The plugin can't require Java 21 or newer until it requires Jenkins 2.541.1 or newer.

The developer doucmentation recommends either 2.528.3 or 2.541.3. We generally prefer to choose the older of those two versions so that more users can upgrade their installed plugins with bug fixes and improvements. That page will recommend 2.541.3 and 2.555.3 in July 2026 when the next LTS baseline is released.

Adds Java 17 to the test matrix so that future pull request proposals will fail if they attempt to require Java 21.

When this is released, it will fix one of the failures in the plugin BOM release:

Reverts pull requests:

Testing done

  • Confirmed that the code fails to compile with Java 17 before this change and compiles and tests successfully after this change

Submitter checklist

  • Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
  • Ensure that the pull request title represents the desired changelog entry
  • Please describe what you did
  • Link to relevant issues in GitHub or Jira
  • Link to relevant pull requests, esp. upstream and downstream changes
  • Ensure you have provided tests that demonstrate the feature works or the issue is fixed

Checkstyle 13 requires Java 21 or newer.

We can't use checjstyle 13 until the plugin requires Java 21 or newer.
The plugin can't require Java 21 or newer until it requires Jenkins
2.541.1 or newer.

https://www.jenkins.io/doc/developer/plugin-development/choosing-jenkins-baseline/#currently-recommended-versions
recommends either 2.528.3 or 2.541.3.  We generally prefer to choose the
older of those two versions so that more users can upgrade their installed
plugins with bug fixes and improvements.  That page will recommend
2.541.3 and 2.555.3 in July 2026 when the next LTS baseline is released.

Adds Java 17 to the test matrix so that future pull request proposals
will fail if they attempt to require Java 21.

When this is released, it will fix one of the failures in the plugin
BOM release:

* jenkinsci/bom#6837

Reverts pull requests:

* jenkinsci#213
* jenkinsci#215
* jenkinsci#224
* jenkinsci#227

Testing done:

* Confirmed that the code fails to compile with Java 17 before this
  change and compiles and tests successfully after this change
@MarkEWaite
MarkEWaite requested a review from a team as a code owner May 23, 2026 12:36

@krisstern krisstern left a comment

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.

LGTM

@krisstern

krisstern commented May 23, 2026

Copy link
Copy Markdown
Member

Thanks, Mark! Appreciate the help

@krisstern
krisstern enabled auto-merge (squash) May 23, 2026 13:17
@krisstern
krisstern disabled auto-merge May 23, 2026 19:04
@krisstern
krisstern merged commit 3ae0e3d into jenkinsci:master May 23, 2026
15 of 17 checks passed
@MarkEWaite
MarkEWaite deleted the downgrade-checkstyle-for-java-17 branch May 24, 2026 12:54
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.

2 participants