graalvm*: add CE JDK 17 and fix CE JDK 21 checkver by B67687 · Pull Request #592 · ScoopInstaller/Java · GitHub
Skip to content

graalvm*: add CE JDK 17 and fix CE JDK 21 checkver#592

Merged
niheaven merged 2 commits into
ScoopInstaller:masterfrom
B67687:graalvm-ce-17jdk
Apr 27, 2026
Merged

graalvm*: add CE JDK 17 and fix CE JDK 21 checkver#592
niheaven merged 2 commits into
ScoopInstaller:masterfrom
B67687:graalvm-ce-17jdk

Conversation

@B67687

@B67687 B67687 commented Apr 23, 2026

Copy link
Copy Markdown
Contributor

This handles the still-useful Community Edition part of #508 without reusing its stale manifest shape directly.

Changes:

Design decisions:

  • graalvm-ce-17jdk uses the same extract_to plus installer move pattern as the existing newer GraalVM manifests, so it does not depend on the internal extracted directory name.
  • graalvm21-jdk21 already covers the Community JDK 21 package requested in graalvm-ce-jdk: add version 17.0.9 and 21.0.2 #508, so this PR fixes its version detection rather than adding a duplicate manifest under another name.
  • The version source is the official graalvm/graalvm-ce-builds GitHub releases API, not a third-party source.

Validation:

  • checkver.ps1 graalvm-ce-17jdk -> 17.0.9

  • checkver.ps1 graalvm21-jdk21 -> 21.0.2

  • checkurls.ps1 graalvm-ce-17jdk -> [1][1][0]

  • checkurls.ps1 graalvm21-jdk21 -> [1][1][0]

  • I have read the Contributing Guide.

Summary by CodeRabbit

  • New Features

    • Added GraalVM Community Edition JDK 17 for Windows x64 with packaged installer and automatic environment setup (PATH, JAVA_HOME, GRAALVM_HOME).
  • Improvements

    • Improved version checking for GraalVM JDK 21 to provide more reliable and timely update detection.

@coderabbitai

coderabbitai Bot commented Apr 23, 2026

Copy link
Copy Markdown

@coderabbitai

coderabbitai Bot commented Apr 23, 2026

Copy link
Copy Markdown
✅ Actions performed

Full review triggered.

@coderabbitai

coderabbitai Bot commented Apr 23, 2026

Copy link
Copy Markdown
✅ Actions performed

Reviews resumed.

@coderabbitai

coderabbitai Bot commented Apr 24, 2026

Copy link
Copy Markdown
✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🧹 Nitpick comments (2)
bucket/graalvm-ce-17jdk.json (1)

20-24: checkver config LGTM; optional regex tightening.

Mirrors the pattern now used in graalvm21-jdk21.json; jsonpath: $[*].tag_name against releases?per_page=100 correctly yields tag strings for the regex filter.

Optional nit (same as the sibling manifest): jdk-(17[\d.]+) would match a tag like jdk-170.x if one ever appeared. Using jdk-(17\.[\d.]+) is a touch stricter. Purely defensive — safe to ignore.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@bucket/graalvm-ce-17jdk.json` around lines 20 - 24, The checkver block's
regex "jdk-(17[\\d.]+)" is permissive and could match unintended tags; update
the regex in the checkver section to the stricter pattern "jdk-(17\\.[\\d.]+)"
(i.e., modify the regex value in the checkver object) so it requires a dot after
"17" and avoids matching things like "jdk-170.x".
bucket/graalvm21-jdk21.json (1)

21-23: checkver switch to Releases API LGTM.

Querying /releases?per_page=100 and extracting tag names via jsonpath correctly avoids the /releases/latest HTML endpoint that was pinned to the 25.x train, so the existing jdk-(21[\d.]+) regex can now pick up the latest jdk-21.x tag among the paged results. Current release cadence on graalvm/graalvm-ce-builds keeps the relevant 21.x tags well within the first 100 entries.

Optional nit: the regex could be tightened to jdk-(21\.[\d.]+) so it doesn't match a hypothetical jdk-21X... tag (e.g. jdk-210.0.0). Not a real-world risk today, purely defensive.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@bucket/graalvm21-jdk21.json` around lines 21 - 23, Tighten the release-tag
regex used for checkver: replace the current "regex" value jdk-(21[\d.]+) with a
more defensive pattern that requires a dot after 21 (e.g. jdk-(21\.[\d.]+));
update the "regex" field in the JSON (the entry with keys "url", "jsonpath",
"regex") so it only matches tags like jdk-21.x and not hypothetical jdk-210...
tags.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@bucket/graalvm-ce-17jdk.json`:
- Around line 20-24: The checkver block's regex "jdk-(17[\\d.]+)" is permissive
and could match unintended tags; update the regex in the checkver section to the
stricter pattern "jdk-(17\\.[\\d.]+)" (i.e., modify the regex value in the
checkver object) so it requires a dot after "17" and avoids matching things like
"jdk-170.x".

In `@bucket/graalvm21-jdk21.json`:
- Around line 21-23: Tighten the release-tag regex used for checkver: replace
the current "regex" value jdk-(21[\d.]+) with a more defensive pattern that
requires a dot after 21 (e.g. jdk-(21\.[\d.]+)); update the "regex" field in the
JSON (the entry with keys "url", "jsonpath", "regex") so it only matches tags
like jdk-21.x and not hypothetical jdk-210... tags.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 28b087af-1347-4a0b-ae88-be1e829ff9c8

📥 Commits

Reviewing files that changed from the base of the PR and between aded4b6 and 5878ad9.

📒 Files selected for processing (2)
  • bucket/graalvm-ce-17jdk.json
  • bucket/graalvm21-jdk21.json

@coderabbitai

coderabbitai Bot commented Apr 24, 2026

Copy link
Copy Markdown
✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@B67687

B67687 commented Apr 25, 2026

Copy link
Copy Markdown
Contributor Author

This is the CE side of the long-running GraalVM request in #472.

It adds graalvm-ce-17jdk using the naming discussed there, and fixes graalvm21-jdk21 checkver so it can still resolve the 21 line from the official GraalVM CE releases source.

CI and CodeRabbit are clean now, so I thought I’d flag it in case it helps with review.

@niheaven

Copy link
Copy Markdown
Member

/verify

@github-actions

Copy link
Copy Markdown
Contributor

@niheaven niheaven merged commit d332f5c into ScoopInstaller:master Apr 27, 2026
3 checks passed
@B67687 B67687 deleted the graalvm-ce-17jdk branch April 27, 2026 14:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Request] New Oracle GraalVM and GraalVM Community for JDK 17.0.7 and JDK 20.0.1

2 participants