Skip to content

oraclejdk: add explicit version manifests#600

Open
B67687 wants to merge 6 commits into
ScoopInstaller:masterfrom
B67687:add/oraclejdk-versions-v2
Open

oraclejdk: add explicit version manifests#600
B67687 wants to merge 6 commits into
ScoopInstaller:masterfrom
B67687:add/oraclejdk-versions-v2

Conversation

@B67687
Copy link
Copy Markdown
Contributor

@B67687 B67687 commented Apr 29, 2026

Closes #566

Summary

Add explicit version manifests to follow bucket pattern:

  • oraclejdk-21.json - Oracle JDK 21 LTS (explicit)
  • oraclejdk-26.json - Oracle JDK 26 (explicit)

This gives users the choice between:

  • oraclejdk - always latest (currently JDK 26)
  • oraclejdk-lts - latest LTS (currently JDK 21)
  • oraclejdk-26 - explicit JDK 26 pin
  • oraclejdk-21 - explicit JDK 21 LTS pin

Validation

checkurls.ps1 oraclejdk-21 -> [1][1][0]
checkurls.ps1 oraclejdk-26 -> [1][1][0]

Context Update

Oracle JDK 21, 25, and 26 are now free to use under the Oracle No-Fee Terms and Conditions (NFTC). This addresses the concern raised in Discussion #517 about Oracle JDK requiring sign-in - that policy has changed, making explicit version manifests appropriate.

Summary by CodeRabbit

  • New Features
    • Oracle JDK 21 LTS (21.0.11) is now available for Windows 64-bit.
    • Oracle JDK 26 (26.0.1) is now available for Windows 64-bit.
    • Installer manifests include automatic version detection and autoupdate support.
    • Installation sets JAVA_HOME and adds the JDK bin directory to PATH.

Review Change Stack

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 29, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 04cbf920-a1ce-40cf-816b-15672ad01681

📥 Commits

Reviewing files that changed from the base of the PR and between 98ac885 and 0e23f64.

📒 Files selected for processing (1)
  • bucket/oraclejdk-26.json

Walkthrough

Adds two new Scoop package manifests: oraclejdk-21 (jdk-21.0.11) and oraclejdk-26 (jdk-26.0.1) describing Windows x64 ZIP downloads with pinned SHA256s, extraction into jdk-<version>, JAVA_HOME/PATH env, checkver scraping, and autoupdate templates.

Changes

Oracle JDK Manifests

Layer / File(s) Summary
Oracle JDK manifests (metadata, env, checkver, autoupdate)
bucket/oraclejdk-21.json, bucket/oraclejdk-26.json
Add new JSON manifests for Oracle JDK 21.0.11 and 26.0.1: package metadata (description, homepage, license, version), 64-bit Windows ZIP URLs with pinned SHA256, extraction into jdk-<version> directories, env settings for JAVA_HOME and PATH, checkver regex scraping from Oracle pages, and autoupdate templates that derive future URLs and SHA256 locations.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • se35710
  • chawyehsu

Poem

🐇 I hop the build with manifest bright,
Zips and SHA pins snug in the night,
Checkver sniffs updates, autoupdate sings,
JAVA_HOME set — the meadow springs,
Hooray for builds and carrot things!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed Title accurately summarizes the primary change: adding explicit version manifests for Oracle JDK 21 and 26.
Description check ✅ Passed Description includes issue reference, clear summary, validation output, and relevant context about Oracle's free-tier policy change.
Linked Issues check ✅ Passed PR adds oraclejdk-21 and oraclejdk-26 manifests fulfilling issue #566's core objectives: providing explicit version pins and preventing unintended upgrades across major versions.
Out of Scope Changes check ✅ Passed Changes are focused on adding two new JSON manifest files for explicit JDK versions as specified in issue #566; no unrelated modifications detected.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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 and usage tips.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 29, 2026

✅ 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.

2 similar comments
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 29, 2026

✅ 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
Copy link
Copy Markdown

coderabbitai Bot commented Apr 29, 2026

✅ 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.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@bucket/oraclejdk-26.json`:
- Around line 17-20: The checkver regex currently matches any JDK major version;
update the checkver.regex to only capture major version 26 (e.g., anchor the
pattern to match "Java SE Development Kit 26..." rather than any digits) so
$majorVersion remains 26; specifically modify the "checkver" -> "regex" value to
constrain the captured version to major 26 (and keep the capture group format
unchanged so downstream $majorVersion parsing continues to work).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: d2b0088f-c5a3-4371-82a1-b1b87c6e3183

📥 Commits

Reviewing files that changed from the base of the PR and between ef20951 and 3e72ca5.

📒 Files selected for processing (2)
  • bucket/oraclejdk-21.json
  • bucket/oraclejdk-26.json

Comment thread bucket/oraclejdk-26.json Outdated
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 29, 2026

✅ 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.

@github-actions
Copy link
Copy Markdown
Contributor

Your changes did not pass all checks.

Please address the issues in the manifest and comment starting with /verify to rerun the checks.

oraclejdk-21

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

oraclejdk-26

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

Check the full log for details.

@B67687 B67687 force-pushed the add/oraclejdk-versions-v2 branch from 1f920d0 to 1707195 Compare April 29, 2026 15:47
@github-actions
Copy link
Copy Markdown
Contributor

All changes look good.

Wait for review from human collaborators.

oraclejdk-21

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

oraclejdk-26

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

Check the full log for details.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 30, 2026

✅ 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.

@github-actions
Copy link
Copy Markdown
Contributor

All changes look good.

Wait for review from human collaborators.

oraclejdk-21

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

oraclejdk-26

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

Check the full log for details.

The previous regex  could
match any JDK version on the Oracle downloads page (25, 21, etc.).
Pinning to  ensures only JDK 26 versions are captured.
@github-actions
Copy link
Copy Markdown
Contributor

All changes look good.

Wait for review from human collaborators.

oraclejdk-21

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

oraclejdk-26

  • Lint
  • Description
  • License
  • Hashes
  • Checkver
  • Autoupdate
  • Autoupdate Hash Extraction

Check the full log for details.

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.

Update oraclejdk manifests to oraclejdk-25 and oraclejdk-21

1 participant