Skip to content

#1922: Add Task commandlet #1948

Open
KarimALotfy wants to merge 11 commits into
devonfw:mainfrom
KarimALotfy:feature/1922-integrate-task
Open

#1922: Add Task commandlet #1948
KarimALotfy wants to merge 11 commits into
devonfw:mainfrom
KarimALotfy:feature/1922-integrate-task

Conversation

@KarimALotfy
Copy link
Copy Markdown
Contributor

@KarimALotfy KarimALotfy commented May 15, 2026

This PR fixes #1922

Implemented changes:

  • Add new Task Commandlet based on Npm

Test:

  • Run IDEasy with run configuration :
  • install task then --> task --init (which will create a Taskfile.yml within the same directory)
  • or simply : task --version

Checklist for this PR

Make sure everything is checked before merging this PR. For further info please also see
our DoD.

  • When running mvn clean test locally all tests pass and build is successful
  • PR title is of the form #«issue-id»: «brief summary» (e.g. #921: fixed setup.bat). If no issue ID exists, title only.
  • PR top-level comment summarizes what has been done and contains link to addressed issue(s)
  • PR and issue(s) have suitable labels
  • Issue is set to In Progress and assigned to you or there is no issue (might happen for very small PRs)
  • You followed all coding conventions
  • You have added the issue implemented by your PR in CHANGELOG.adoc unless issue is labeled
    with internal

Checklist for tool commandlets

Have you added a new «tool» as commandlet? There are the following additional checks:

  • The tool can be installed automatically (during setup via settings) or via the commandlet call
  • The tool is isolated in its IDEasy project, see Sandbox Principle
  • The new tool is added to the table of tools in LICENSE.asciidoc
  • The new commandlet is a command-wrapper for «tool»
  • Proper help texts for all supported languages are added here
  • The new commandlet installs potential dependencies automatically
  • The variables «TOOL»_VERSION and «TOOL»_EDITION are honored by your commandlet
  • The new commandlet is tested on all platforms it is available for or tested on all platforms that are in scope of the linked issue

@github-project-automation github-project-automation Bot moved this to 🆕 New in IDEasy board May 15, 2026
@KarimALotfy KarimALotfy moved this from 🆕 New to Team Review in IDEasy board May 15, 2026
@KarimALotfy KarimALotfy self-assigned this May 15, 2026
@KarimALotfy KarimALotfy added task task tool (https://taskfile.dev) CLI IDEasy command-line-interface (parsing args, etc.) labels May 15, 2026
@coveralls
Copy link
Copy Markdown
Collaborator

coveralls commented May 18, 2026

Coverage Report for CI Build 26277673385

Coverage decreased (-0.02%) to 71.047%

Details

  • Coverage decreased (-0.02%) from the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • 11 coverage regressions across 4 files.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

11 previously-covered lines in 4 files lost coverage.

File Lines Losing Coverage Coverage
com/devonfw/tools/ide/commandlet/CommandletManagerImpl.java 8 90.5%
com/devonfw/tools/ide/common/Tag.java 1 98.17%
com/devonfw/tools/ide/tool/ide/IdeToolCommandlet.java 1 78.33%
com/devonfw/tools/ide/version/VersionSegment.java 1 89.76%

Coverage Stats

Coverage Status
Relevant Lines: 15535
Covered Lines: 11511
Line Coverage: 74.1%
Relevant Branches: 6946
Covered Branches: 4461
Branch Coverage: 64.22%
Branches in Coverage %: Yes
Coverage Strength: 3.14 hits per line

💛 - Coveralls

Copy link
Copy Markdown
Contributor

@tineff96 tineff96 left a comment

Choose a reason for hiding this comment

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

Review Summary

I was able to run the tests described in the PR (install, init, and version check), and they worked as expected.

Running mvn clean install locally currently fails on my side, but this seems to be related to my local environment (unrelated tests), not to the Task changes themselves. I will re-check this to make sure there is no issue.

Feedback

  • The implementation integrates well into the existing structure (reusing NpmBasedCommandlet and Tag system).
  • The code is clean and consistent with existing patterns.

From my side, this looks good overall 👍

@hohwille hohwille changed the title #1922 : Add Task commandlet #1922: Add Task commandlet May 21, 2026
@KarimALotfy KarimALotfy moved this from Team Review to 👀 In review in IDEasy board May 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLI IDEasy command-line-interface (parsing args, etc.) task task tool (https://taskfile.dev)

Projects

Status: 👀 In review

Development

Successfully merging this pull request may close these issues.

Integrate task

3 participants