asdf-vm / asdf-vm/asdf

Ability to specify plugins in a file

Open
#829 17 comments 14 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
25.6k
Forks
941
Avg merge
9h 24m
Merged PRs (30d)
3

Description

**Is your feature request related to a problem? Please describe.**

I work with a lot of projects that check in `.tool-versions`, because I like using asdf 👍. However, it's not always obvious to new users which plugins they need to install. This is a particular problem for plugins that are not in the official plugin list.

**Describe the solution you'd like**

We could specify plugins in `.asdfrc`. I've not looked deeply into parsing asdfrc, or its format, so I'm not sure what form the syntax should take yet.

I had previously thought about specifing plugins in `.tool-versions`, e.g.

```
plugin ruby https://github.com/asdf-vm/asdf-ruby
ruby 2.7.0
```

But, plugins are global to asdf, so perhaps this isn't a good idea in case different `.tool-versions` files conflict.

**Update**: I've edited this section to make it clear that a `.tool-versions`, project-specific solution is _not_ what I proposed, but was something I thought about then discarded.

**Describe similar asdf features and why they are not sufficient**

**Describe workarounds you've considered**

**Additional context**

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing .asdfrc and .tool-versions formats and the 17-comment discussion to determine the intended configuration syntax and how global plugins should be handled. The work is done when a settled design can specify required plugins without creating project-specific conflicts, with the relevant behavior covered by tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
cli, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.