Skip to content

feat(cli): resolve node, java and npm tools from the tool-versions data - #8085

Open
viceice wants to merge 1 commit into
viceice/feat/resolver-offlinefrom
viceice/feat/resolver-special-rules
Open

viceice wants to merge 1 commit into
viceice/feat/resolver-offlinefrom
viceice/feat/resolver-special-rules

Conversation

@viceice

@viceice viceice commented Oct 29, 2026 •

Copy link
Copy Markdown
Member

Changes

When the image embeds data for the tool, a missing version, latest or a partial version resolves from the tool-versions data first:

  • node, java, java-jdk, java-jre: latest is the newest LTS release.
  • npm tools (npm, pnpm, yarn, renovate, …): latest is the latest dist-tag; a partial version skips deprecated releases. A dist-tag which needs a newer containerbase falls back to the newest installable release.
  • yarn: the major still selects the npm package.
  • install-npm, install-gem and install-pip never read the data, they keep using their registries.

Otherwise the tools use their own lookup, as before:

Exact versions keep their old resolvers. git follows with #8077; poetry follows once the data marks yanked releases. Docs follow in the top layer of the stack.

Part of #7897.

Context

Please select one of the following:

  • This closes an existing Issue, Closes: #
  • This doesn't close an Issue, but I accept the risk that this PR may be closed if maintainers disagree with its opening or implementation

AI assistance disclosure

Did you use AI tools to create any part of this pull request?

Please select one option and, if yes, briefly describe how AI was used (e.g., code, tests, docs) and which tool(s) you used.

  • No — I did not use AI for this contribution.
  • Yes — minimal assistance (e.g., IDE autocomplete, small code completions, grammar fixes).
  • Yes — substantive assistance (AI-generated non‑trivial portions of code, tests, or documentation).
  • Yes — other (please describe):

Code and tests by Claude Code (Claude Opus 5.5), reviewed by @viceice.

Use of AI in replying to PR comments

Who answers review comments:

  • @viceice will read and reply directly. Name the account.
  • An agent will draft replies and @username will read them before they are posted. Name the account.
  • An agent will draft replies and reply autonomously. This is heavily discouraged, and we prefer that there are humans in the loop
  • Nobody has explicitly committed to replying.

Documentation (please check one with an [x])

  • I have updated the documentation, or
  • No documentation update is required

How I've tested my work (please select one)

I have verified these changes via:

  • Code inspection only, or
  • Newly added/modified tests

🤖 Generated with Claude Code

@coderabbitai

coderabbitai Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 1 minute.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Central YAML; Path: .coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: b7e54e52-0cd9-4522-8a8c-71fe93372be7
Commits

Reviewing files that changed from the base of the PR and between 6ee5cef and 35e60c9.

Files selected for processing: 13
  • src/cli/command/install-npm.spec.ts
  • src/cli/command/install-tool.spec.ts
  • src/cli/command/install-tool.ts
  • src/cli/install-tool/index.spec.ts
  • src/cli/install-tool/index.ts
  • src/cli/install-tool/tool-version-resolver.service.spec.ts
  • src/cli/install-tool/tool-version-resolver.service.ts
  • src/cli/install-tool/tool-version-resolver.ts
  • src/cli/services/tool-versions.service.spec.ts
  • src/cli/services/tool-versions.service.ts
  • src/cli/tools/java/resolver.ts
  • src/cli/tools/node/resolver.spec.ts
  • src/cli/tools/node/resolver.ts
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@viceice
viceice added this pull request to stack #8087 October 29, 2026 11:58
@viceice
viceice force-pushed the viceice/feat/resolver-special-rules branch from e0be158 to baa9ce9 Compare October 29, 2026 12:31
@viceice viceice changed the title feat(cli): resolve node, java, npm tools and poetry from the tool-versions data feat(cli): resolve node, java and npm tools from the tool-versions data Oct 29, 2026
@viceice
viceice marked this pull request as ready for review October 29, 2026 12:37
@viceice
viceice force-pushed the viceice/feat/resolver-special-rules branch from baa9ce9 to 9712f12 Compare October 29, 2026 14:17
Co-Authored-By: Claude Opus 5.5 <michael.kriese+claude-code@mend.io>
@viceice
viceice force-pushed the viceice/feat/resolver-special-rules branch from 9712f12 to 35e60c9 Compare October 29, 2026 15:14
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