Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make graalnodejs-community available in nvm-sh/nvm and coreybutler/nvm-windows #8234

Open
linghengqian opened this issue Jan 24, 2024 · 1 comment
Assignees
Labels

Comments

@linghengqian
Copy link

linghengqian commented Jan 24, 2024

Feature request

Please include the following information:

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. E.g. I'm always frustrated when [...]

Describe the solution you'd like.
A clear and concise description of what you want to happen.

  • Make graalnodejs-community available in nvm-sh/nvm and coreybutler/nvm-windows.

  • It is mentioned at https://github.com/oracle/graaljs?tab=readme-ov-file#standalone-distribution that the way to install graalnodejs-community is to download the Standalone Distribution binary through github. But in fact, this is not a common practice for NodeJS developers.

  • On Linux, NodeJS developers manage local NodeJS instances through nvm-sh/nvm at https://github.com/nvm-sh/nvm . The role of nvm-sh/nvm in the NodeJS world is somewhat similar to the role of SDKMAN! in the Java world.

  • On Windows, NodeJS developers manage local NodeJS instances through coreybutler/nvm-windows at https://github.com/coreybutler/nvm-windows . coreybutler/nvm-windows uses syntax similar to nvm-sh/nvm to make nvm available on Windows. Microsoft considers it the default recommended multi-version NodeJS manager, refer to https://learn.microsoft.com/en-us/windows/dev-environment/javascript/nodejs-on-windows .

  • Making graalnodejs-community available in nvm-sh/nvm and coreybutler/nvm-windows will help developers update graalnodejs-community in an easy way, just like switching GraalVM versions via SDKMAN!.

  • The effect might look like this.

  1. For bash on Ubuntu 22.04.3
cd /tmp
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm install 23.1.2-graalnodejs-community
nvm use 23.1.2-graalnodejs-community
  1. For Windows PowerShell 5.1 or PowerShell 7 with elevated Admin permissions on Windows 11
winget install -e --id CoreyButler.NVMforWindows --source winget
nvm install 23.1.2-graalnodejs-community
nvm use 23.1.2-graalnodejs-community

Describe who do you think will benefit the most.
GraalVM users, GraalVM contributors, developers of libraries and frameworks which depend on GraalVM, or somebody else?

  • developers of libraries and frameworks which depend on NodeJS.

Describe alternatives you've considered.
A clear and concise description of any alternative solutions or features you've considered.

  • As described in Extremely slow NPM actions on WSL2 #2390, npm for graalnodejs-community seems to be a reimplementation. In the NodeJS world, changing the package manager is not through nvm-sh/nvm or coreybutler/nvm-windows, but through nodejs/corepack. I'm not sure if the community needs to add graalnodejs-community support at https://github.com/nodejs/corepack .

  • It sounds like installing normal NodeJS first.

cd /tmp
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm install 18
nvm use 18
corepack enable
  • Then set packageManager in package.json of a specific project.
"packageManager": "[email protected]",

Additional context.
Add any other context about the feature request here.
For example, link to the relevant projects, documentation, standards.

Express whether you'd like to help contributing this feature
If you'd like to contribute, please read the contribution guide.

  • This seems to involve changes to the release process of graaljs. I'm not sure what I can do.
@linghengqian
Copy link
Author

  • @TheTaha-Alamine I saw you self-assigned the current issue and I was wondering if there was any progress? Because graalnodejs-community seems to have the same issue as oven-sh/bun, there isn't a non-rate-limited URL for listing all its available versions. Refer to maybe even support bun.js? nvm-sh/nvm#3189 .

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants