Java
Java copied to clipboard
[Request] Update `graalvm-nightly`, `graalvm-nightly-jdk11`, `graalvm-nightly-jdk17`
Information
Name: graalvm-nightly
, graalvm-nightly-jdk11
, graalvm-nightly-jdk17
Description: The three are already inside java bucket. However they are outdated and point to dangling 404 URLs.
Download link(s): Their repository link remains the old one.
I have some ideas on it but not sure how to integrate the changes.
Attempt
I've looked at the newer builds. It seems to me that JDK 21 builds require a file name change, from graalvm-ce-java$matchJava-windows-amd64-dev.zip
to graalvm-community-java$matchJava-windows-amd64-dev.zip
. JDK 11 and 17 builds, however, seem discontinued from 23.1.0-dev-20230812_0125 (see the number of artifacts).
So combining them all I get below for graalvm-nightly
:
{
"description": "High-performance, embeddable, polyglot Virtual Machine for JVM-langs (Java, Scala, Kotlin), JavaScript/NodeJS, Python, Ruby, R, and LLVM-langs (C, C++, Rust)",
"version": "24.0.0-dev-20230914_1326",
"homepage": "https://www.graalvm.org/",
"license": "GPL-2.0",
"url": "https://github.com/graalvm/graalvm-ce-dev-builds/releases/download/24.0.0-dev-20230914_1326/graalvm-ce-java20-windows-amd64-dev.zip",
"hash": "f4b38f6040e649148624f23eb7323f1614807d92535d030d33f7a5f79e5dac5c",
"extract_dir": "graalvm-ce-java20-23.1.0-dev",
"env_add_path": "bin",
"env_set": {
"JAVA_HOME": "$dir",
"GRAALVM_HOME": "$dir"
},
"checkver": {
"github": "https://github.com/graalvm/graalvm-ce-dev-builds",
"regex": "/(?<release>[\\d\\w.-]+)-dev-(?<build>[\\d\\w.-]+)/graalvm-community-java(?<java>\\d[\\d]+)-windows-amd64-dev",
"replace": "${release}-dev-${build}",
"reverse": true
},
"autoupdate": {
"url": "https://github.com/graalvm/graalvm-ce-dev-builds/releases/download/$version/graalvm-community-java$matchJava-windows-amd64-dev.zip",
"extract_dir": "graalvm-community-openjdk-$matchJava+$matchRelease"
}
}
Problem I faced
One problem I have is how do I set extract_dir
in autoupdate
part. The inner folder name is graalvm-community-openjdk-21+35.1
for recent builds. Initially I have no idea of deducing the 35.1
part from build numbers, but later I found it in a metadata file from main Graal repository.
So, I guess it would be great if someone can integrate parsing logic, to dynamically generate folder name from build number there.
Thanks Scoop community 😊
I believe #472 is not related to nightly builds, hence a new issue here.
If it is impossible to use extract_dir
, use "extract_to": "tmp"
and the following installer script:
https://github.com/ScoopInstaller/Java/blob/d2212702c653024cf92a10638c69be8048cfa950/bucket/microsoft17-jdk.json#L17-L22