Skip to content

#1685: Added Nest CLI to IDEasy commandlets#1860

Merged
hohwille merged 25 commits intodevonfw:mainfrom
AdemZarrouki:feature/1685-add-nest-cLI-to-commandlets
May 5, 2026
Merged

#1685: Added Nest CLI to IDEasy commandlets#1860
hohwille merged 25 commits intodevonfw:mainfrom
AdemZarrouki:feature/1685-add-nest-cLI-to-commandlets

Conversation

@AdemZarrouki
Copy link
Copy Markdown
Contributor

@AdemZarrouki AdemZarrouki commented Apr 27, 2026

This PR fixes #1685

Implemented changes:

  • Added new nest commandlet support.
  • Added URL updater for Nest CLI.
  • Added tests for Nest in both cli and url-updater.
  • Updated docs/license/changelog.

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 Apr 27, 2026
@AdemZarrouki AdemZarrouki self-assigned this Apr 27, 2026
@AdemZarrouki AdemZarrouki force-pushed the feature/1685-add-nest-cLI-to-commandlets branch from 0c5377c to 4094f2f Compare April 27, 2026 10:16
@coveralls
Copy link
Copy Markdown
Collaborator

coveralls commented Apr 27, 2026

Coverage Report for CI Build 25375856694

Coverage increased (+0.03%) to 70.764%

Details

  • Coverage increased (+0.03%) from the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • 22 coverage regressions across 3 files.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

22 previously-covered lines in 3 files lost coverage.

File Lines Losing Coverage Coverage
com/devonfw/tools/ide/url/updater/UpdateManager.java 13 0.0%
com/devonfw/tools/ide/commandlet/CommandletManagerImpl.java 8 90.36%
com/devonfw/tools/ide/common/Tag.java 1 98.17%

Coverage Stats

Coverage Status
Relevant Lines: 15403
Covered Lines: 11357
Line Coverage: 73.73%
Relevant Branches: 6878
Covered Branches: 4410
Branch Coverage: 64.12%
Branches in Coverage %: Yes
Coverage Strength: 3.12 hits per line

💛 - Coveralls

@AdemZarrouki AdemZarrouki marked this pull request as ready for review April 27, 2026 11:24
@AdemZarrouki AdemZarrouki moved this from 🆕 New to Team Review in IDEasy board Apr 27, 2026
@AdemZarrouki AdemZarrouki force-pushed the feature/1685-add-nest-cLI-to-commandlets branch from 22cec6a to ab1f308 Compare April 28, 2026 07:40
@satorus satorus added enhancement New feature or request npm node package manager commandlet ide sub-command nest labels Apr 28, 2026
@satorus
Copy link
Copy Markdown
Contributor

satorus commented Apr 28, 2026

Installation works and the Code looks good!

The Log output after installation is a little bit confusing:

image

Apparently ide picks up the current node version as the version of nest, and says it overwrote a nest version with this install (which it did not, it is only a presentation bug).

Seems to be a general problem with NpmBasedCommandlets:
image

@AdemZarrouki
Copy link
Copy Markdown
Contributor Author

AdemZarrouki commented Apr 28, 2026

@satorus thanks for the review. I also noticed that i forgot to call NestUrlUpdater in updaters in UpdateManager. It should now be corrected.

You are correct regarding your comment about the npm version. It may be a bug that we need to check it and fix it.

@AdemZarrouki AdemZarrouki requested a review from satorus April 28, 2026 12:23
@AdemZarrouki AdemZarrouki moved this from Team Review to 👀 In review in IDEasy board Apr 28, 2026
@AdemZarrouki AdemZarrouki requested a review from hohwille April 28, 2026 12:39
@hohwille
Copy link
Copy Markdown
Member

Apparently ide picks up the current node version as the version of nest, and says it overwrote a nest version with this install (which it did not, it is only a presentation bug).

@satorus thanks for testing and finding this problem.
Can you or @AdemZarrouki create a bug ticket for this problem?
We should not block this PR by that problem that already existed before by other NPM based commandlets.

Copy link
Copy Markdown
Member

@hohwille hohwille left a comment

Choose a reason for hiding this comment

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

@AdemZarrouki thank you very much for your PR. Look like solid and good work to me. 👍

I added some review comments. Please have a look and address them.
Then we can merge this PR.

Sorry, if something things are obvious to me but unclear to (newer) team members.
We should discuss (e.g. in our retro) how to better prevent pointless work like creating an UrlUpdater when not needed.

Comment thread cli/src/main/java/com/devonfw/tools/ide/tool/nest/Nest.java Outdated
Comment thread cli/src/test/resources/ide-projects/nest/_ide/urls/nest/nest/dependencies.json Outdated
Comment thread documentation/LICENSE.adoc Outdated
Comment thread url-updater/src/main/java/com/devonfw/tools/ide/url/tool/nest/NestUrlUpdater.java Outdated
@hohwille hohwille added this to the release:2026.05.001 milestone Apr 30, 2026
@AdemZarrouki AdemZarrouki force-pushed the feature/1685-add-nest-cLI-to-commandlets branch from 2fbc910 to 4b1dc24 Compare May 4, 2026 09:22
@AdemZarrouki AdemZarrouki force-pushed the feature/1685-add-nest-cLI-to-commandlets branch from 2323e68 to 7162792 Compare May 5, 2026 08:43
# Conflicts:
#	cli/src/main/java/com/devonfw/tools/ide/commandlet/CommandletManagerImpl.java
…n IDEasy commandlets

# Conflicts:
#	CHANGELOG.adoc

# Conflicts:
#	CHANGELOG.adoc
…agerBasedLocalToolCommandlet to avoid infinite loops
@AdemZarrouki AdemZarrouki force-pushed the feature/1685-add-nest-cLI-to-commandlets branch from 9911e6f to 2c7bfe1 Compare May 5, 2026 11:35
@AdemZarrouki AdemZarrouki mentioned this pull request May 5, 2026
15 tasks
Copy link
Copy Markdown
Member

@hohwille hohwille left a comment

Choose a reason for hiding this comment

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

@AdemZarrouki great. Now everything is solved and ready for merge 👍

@hohwille hohwille merged commit 2e54dfe into devonfw:main May 5, 2026
3 checks passed
@github-project-automation github-project-automation Bot moved this from 👀 In review to ✅ Done in IDEasy board May 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

commandlet ide sub-command enhancement New feature or request nest npm node package manager

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

Add Nest CLI to IDEasy commandlets

4 participants