dotCMS / dotCMS/core

Task 2.3: Migrate Commons CLI

Open
#32,681 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Team : Platform Type : Task
Dominant language
Java
Stars
970
Forks
486
Avg merge
3d 33m
Merged PRs (30d)
170

Description

Task Description

Replace dot.commons-cli with standard commons-cli:commons-cli dependency

Status: 🔄 PENDING
Scope
  • Update import statements from repackaged Commons CLI to standard
  • Remove dot.commons-cli from POM files
  • Add standard commons-cli:commons-cli dependency to BOM
  • Test command-line interface functionality
Implementation Plan
  1. Dependency Update:

    • Remove com.dotcms.lib:dot.commons-cli from BOM and dotCMS POM
    • Add standard commons-cli:commons-cli to BOM with appropriate version
    • Update dotCMS POM to use standard dependency
  2. Code Migration:

    • Find all imports: com.dotcms.repackage.org.apache.commons.cli.*
    • Replace with: org.apache.commons.cli.*
    • Limited usage expected based on analysis
  3. Testing:

    • Test command-line interface functionality
    • Verify CLI parsing works correctly
    • Run related unit tests
Acceptance Criteria
  • [ ] All Commons CLI imports updated from repackaged to standard
  • [ ] Standard Commons CLI dependency added to BOM
  • [ ] Repackaged Commons CLI dependency removed from POM files
  • [ ] All CLI functionality tests pass
  • [ ] No functional regressions in command-line processing
  • [ ] Integration tests pass
Claude Assistance Benefits
  • Import Updates: Claude can quickly identify and update all Commons CLI imports
  • Usage Analysis: Analyze how Commons CLI is used in the codebase
  • Testing Support: Help identify CLI test cases that need verification
  • Compatibility Check: Verify version compatibility with existing code
Related
  • Epic: #32675 - Remove Repackaged Dependencies
  • Phase: 2 - Low-Risk Migrations
  • Priority: Low
  • Estimated Effort: 1 day (with Claude assistance)
Technical Notes
  • Commons CLI is used for command-line argument parsing
  • Usage is limited in the codebase
  • Verify compatibility with existing CLI interfaces

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the BOM and dotCMS POM entries for com.dotcms.lib:dot.commons-cli, then search the codebase for com.dotcms.repackage.org.apache.commons.cli imports. Update the dependency and imports as described, and run the related unit and integration tests to verify CLI parsing and command-line processing.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system, cli
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.