Giter VIP home page Giter VIP logo

asdf-graalvm's Introduction

asdf-graalvm

GraalVM plugin for asdf version manager

Install

asdf plugin-add graalvm https://github.com/asdf-community/asdf-graalvm.git

Use

Check asdf readme for instructions on how to install & manage versions of Graal.

asdf-graalvm's People

Contributors

adriangonz avatar github-actions[bot] avatar joschi avatar macavirus avatar patrickpichler avatar potatopankakes avatar renovate[bot] avatar smorimoto avatar vic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

asdf-graalvm's Issues

List jq as dependency for the plugin

I just tried to install a graalvm with this plugin and issued:

asdf install graalvm latest

I got:

No compatible versions available (graalvm [0-9])
graalvm  is already installed

After some digging I found that I was missing the jq program. I installed it (Ubuntu: sudo apt install jq). After that it worked.

To avoid this for future users I would add some hint to the readme listing jq as a dependency.

Does not install 19.0.0

$ asdf install graalvm 19.0.0
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100     9    0     9    0     0     23      0 --:--:-- --:--:-- --:--:--    23
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
asdf-graalvm error: failed to extract archive

NPM global modules are installed under GraalVM

If I install GraalVM and then try to install any npm module globally, it's getting installed under ${HOME}/.asdf/installs/graalvm/${graal-version}/jre/languages/js, rather than ${HOME}/.asdf/installs/nodejs/${node-version}/.npm/lib/node_modules/:

[gorre@uplink no_backup]$ npm install -g now
/home/gorre/.asdf/installs/graalvm/1.0.0-rc14/jre/languages/js/bin/now -> /home/gorre/.asdf/installs/graalvm/1.0.0-rc14/jre/languages/js/lib/node_modules/now/download/dist/now

> [email protected] postinstall /home/gorre/.asdf/installs/graalvm/1.0.0-rc14/jre/languages/js/lib/node_modules/now
> node download/install.js

> For the source code, check out: https://github.com/zeit/now-cli

> Downloading Now CLI 15.0.6 [====================] 100%

+ [email protected]
updated 1 package in 3.781s

As soon as I uninstall GraalVM and repeat the process, everything works as expected:

[gorre@uplink no_backup]$ asdf uninstall graalvm 
[gorre@uplink no_backup]$ npm install -g now
/home/gorre/.asdf/installs/nodejs/10.15.3/.npm/bin/now -> /home/gorre/.asdf/installs/nodejs/10.15.3/.npm/lib/node_modules/now/download/dist/now

> [email protected] postinstall /home/gorre/.asdf/installs/nodejs/10.15.3/.npm/lib/node_modules/now
> node download/install.js

> For the source code, check out: https://github.com/zeit/now-cli

> Downloading Now CLI 15.0.6 [====================] 100%


> [email protected] postinstall /home/gorre/.asdf/installs/nodejs/10.15.3/.npm/lib/node_modules/now
> /home/gorre/.asdf/installs/nodejs/10.15.3/.npm/lib/node_modules/.hooks/postinstall
+ [email protected]
added 1 package in 1.636s

[gorre@uplink no_backup]$ now -v
15.0.6

I was checking the Node.js plugin and this one, but I couldn't spot anything ๐Ÿ˜Ž

This plugin is incompatible with asdf-java

Currently this plugin is not really usable alongside asdf-java, since both want to install shims for java, javac etc. Edit: To be precise, when I have both a jdk (through the java plugin) and graalvm 19.0.0 installed, java etc. still point to the versions from the jdk while graalvm-specific binaries like gu point to graalvm. And I don't really know how I would solve this.

I couldn't find any general asdf "policy" for different plugins that use the same binary names, don't know if this ever came up?

One idea for compatibility might be to e.g. deprecate this plugin and add support for graalvm-x.y.z "versions" to the java plugin instead?

URL logic incorrect?

It appears that the logic dealing with the new release URLs is not quite correct:

> asdf list all graalvm             
19.0.0
19.0.2
19.1.0
19.1.1
19.2.0
19.2.0.1
19.2.1
19.3.0-java8
19.3.0-java11
19.3.0.2-java8
19.3.0.2-java11
20.0.0-java8
20.0.0-java11
19.3.1-java8
19.3.1-java11

> asdf install graalvm 20.0.0-java11
Could not find archive at URL https://github.com/oracle/graal/releases/download/vm-20.0.0-java11/graalvm-ce-linux-amd64-20.0.0-java11.tar.gz

The working URL for this release and arch is:
https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.0.0/graalvm-ce-java11-linux-amd64-20.0.0.tar.gz

`asdf list-all graalvm` is not sorted by version

This makes it hard to just install the latest. It seems like it is currently sorted by created_at time, but I'm not sure this is the most intuitive order.

โฏ asdf list-all graalvm
19.0.0
19.0.2
19.1.0
19.1.1
19.2.0
19.2.0.1
19.2.1
19.3.0-java8
19.3.0-java11
19.3.0.2-java8
19.3.0.2-java11
20.0.0-java8
20.0.0-java11
19.3.1-java8
19.3.1-java11
19.3.6-java8
19.3.6-java11
20.3.2-java8
20.3.2-java11
21.1.0-java8
21.1.0-java11
21.0.0.2-java8
21.0.0.2-java11
20.3.1.2-java8
20.3.1.2-java11
21.0.0-java8
21.0.0-java11
20.3.1-java8
20.3.1-java11
19.3.5-java8
19.3.5-java11
20.3.0-java8
20.3.0-java11
19.3.4-java8
19.3.4-java11
20.2.0-java8
20.2.0-java11
19.3.3-java8
19.3.3-java11
20.1.0-java8
20.1.0-java11
19.3.2-java8
19.3.2-java11

The sort command does a nice job though:

asdf list-all graalvm | sort
19.0.0
19.0.2
19.1.0
19.1.1
19.2.0
19.2.0.1
19.2.1
19.3.0-java11
19.3.0-java8
19.3.0.2-java11
19.3.0.2-java8
19.3.1-java11
19.3.1-java8
19.3.2-java11
19.3.2-java8
19.3.3-java11
19.3.3-java8
19.3.4-java11
19.3.4-java8
19.3.5-java11
19.3.5-java8
19.3.6-java11
19.3.6-java8
20.0.0-java11
20.0.0-java8
20.1.0-java11
20.1.0-java8
20.2.0-java11
20.2.0-java8
20.3.0-java11
20.3.0-java8
20.3.1-java11
20.3.1-java8
20.3.1.2-java11
20.3.1.2-java8
20.3.2-java11
20.3.2-java8
21.0.0-java11
21.0.0-java8
21.0.0.2-java11
21.0.0.2-java8
21.1.0-java11
21.1.0-java8

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

This repository currently has no open or pending branches.

Detected dependencies

github-actions
.github/workflows/workflow.yml
  • asdf-vm/actions v3

  • Check this box to trigger a request for Renovate to run again on this repository

GraalVM JDK17

Please add support for GraalVM JDK17, it's officially available on their repository.

Support Java 16

Starting with version 21.1.0, GraalVM offers experimental Java 16 support. Can support for these builds be added?

Edit: It looks like these builds are supported when installing, but not when listing all available versions

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.