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

regresssion / feature: [0.16.0] asdf no longer recognizes symlinks as versions #1873

Open
reneploetz opened this issue Feb 2, 2025 · 1 comment · May be fixed by #1937
Open

regresssion / feature: [0.16.0] asdf no longer recognizes symlinks as versions #1873

reneploetz opened this issue Feb 2, 2025 · 1 comment · May be fixed by #1937

Comments

@reneploetz
Copy link

Is your feature request related to a problem? Please describe

(Note: this might actually be a regression for a unintended/unsupported feature, so I'm reluctant to classify this as a bug)

Before the change to use Go, it was possible to symlink inside the installs folder to create versions with a stable name. The main rationale was to use them for creating updateable patch versions.
These are useful e.g. for Java, where there is a plethora of patch versions that refer to essentially the same version (e.g. for java -> "temurin-21.0.0+35.0.LTS", "temurin-21.0.1+12.0.LTS" etc) - mostly including non-API-breaking security updates.

The issue is that having to reference the exact version in .tool-versions means that if you update, you need to go through the various files to update the number there. This either means you have to keep an insecure version or update the version files individually.

There are at some older reports related to this:
#1622
#523
andrewthauer/asdf-alias#13

Describe the proposed solution

While I do not necessarily want to open a discussion about an alias core command specifically, I would like to have the symlink functionality restored so that you can write a plugin that does this or create those yourself.

Describe similar asdf features and why they are not sufficient

You can obviously just copy the whole installed version after download - but this means that you need to implement a wrapper around the install/uninstall functionality.

Describe other workarounds you've considered

The only workaround is to copy the installed version as far as I can see.

@Valgard
Copy link

Valgard commented Feb 7, 2025

Symlinks no longer work, not just for versions but also for plugins. I used to create a symlink to the Git repo of my fork for plugins I'm working on in the $ASDF_DATA_DIR/plugins directory. Now, the plugins are no longer recognized, and asdf plugin add indicates that the plugin is already installed.

khmm12 added a commit to khmm12/asdf that referenced this issue Feb 10, 2025
Fixes a regression where symlink support for tool versions was inadvertently dropped.

Fixes asdf-vm#1873
@khmm12 khmm12 linked a pull request Feb 10, 2025 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants