Skip to content

Migrate from Commons Lang to native Java Platform functionality - #93

Open
timja wants to merge 1 commit into
jenkinsci:masterfrom
timja:commons-lang3
Open

Migrate from Commons Lang to native Java Platform functionality#93
timja wants to merge 1 commit into
jenkinsci:masterfrom
timja:commons-lang3

Conversation

@timja

@timja timja commented Aug 7, 2026

Copy link
Copy Markdown
Member

No need to use a third-party library when this functionality is available in the Java Platform.

Part of the effort to remove Commons Lang 2 from Jenkins core — jenkinsci/jenkins#16404,
jenkinsci/jenkins#26105. Commons Lang 2 is EOL and carries an unfixed advisory
(GHSA-j288-q9x7-2f5v).

  • StringUtils.equals(a, b)Objects.equals(a, b) (three call sites).
  • StringUtils.isNotEmpty(x)Util.fixEmpty(x) != null.
  • StringUtils.join(ignoreProjects, '\n')String.join("\n", ignoreProjects), guarded on null.
    ignoreProjects is annotated @CheckForNull and StringUtils.join(null, ...) returns null, whereas
    String.join would throw — so getIgnoreProjects() keeps returning null rather than starting to
    throw for a project that has never had the field set.

Testing done

mvn -B -ntp clean verify passes locally on Java 21 / macOS.
The ban-commons-lang-2 enforcer rule was left disabled because it needs parent POM
6.2116.v7501b_67dc517 or newer; bumping the parent from 5.17 was out of scope here.

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

🤖 This pull request was generated with AI assistance (Claude Code) as part of a bulk migration
across Jenkins plugins. If anything here looks wrong, please comment on this PR or contact
@parameter.

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.

1 participant