Commit Graph

31 Commits

Author SHA1 Message Date
Trevor Brown
447acd13d1 feat(golang-rewrite): info command
* Implement info command
* Remove duplicate and unneeded BATS tests from `main_test.go`
* remove download dir for plugin when removing plugin
* update plugins.Add function so downloads directory is created
2024-12-18 11:32:01 -05:00
Trevor Brown
778ab34a6f feat(golang-rewrite): create RunCallback method for Plugin struct
* Create `plugins.New` function, updating existing code to use it
* Add another test for `hook.Run` function
* Enable `plugin_add_command.bats` tests for Go implementation of asdf
* Add `RunCallback` method to `Plugin` struct
* Update `plugins.Add` function to run `post-plugin-add` plugin callback script
* Handle Bash expression and scripts properly in `execute` package so `$@` is always set
2024-12-18 11:32:01 -05:00
Edwin Kofler
19515eda3b
fix: warn if plugin does not support keeping downloads if configured (#1644) 2024-01-10 00:06:35 +11:00
Edwin Kofler
15faf93a0d
fix: Remove unecessary backslashes (#1384) 2022-12-20 15:54:00 -05:00
Jochen Schalanda
e61e3d9ade
feat: case-insensitive filtering of unstable versions in latest (#1139)
* feat: case-insensitive filtering of unstable versions in `latest`
* Fix versions in version_commands tests
2021-12-29 08:50:06 -05:00
Radon Rosborough
c911f2d431
fix: Fix plugin-test arg parsing (#1084) 2021-11-08 09:40:53 +11:00
Yasunori Fujie
304f72dbb2
feat: add post update plugin support (#1049)
Co-authored-by: James Hegedus <jthegedus@hey.com>
2021-09-24 08:53:52 +10:00
James Hegedus
7697e6e344
fix: regex validate plugin names on plugin add cmd (#1010) 2021-07-30 08:49:01 +10:00
Trevor Brown
2ad0f5ea45
fix: allow plugin callbacks to be in any language (#995) 2021-07-30 08:44:14 +10:00
Alberto de Murga
664d82ed8a
feat: asdf latest defer to plugin to determine the latest version (#938)
Co-authored-by: James Hegedus <jthegedus@hey.com>
2021-07-07 12:51:19 +10:00
Matt
a7d3661f6c
fix: insert error handling in list-all & download plugin scripts (#881) 2021-05-19 19:51:45 +10:00
Jochen Schalanda
0edb50547c
feat: support for "latest" in shell, local, and global (#802) 2020-09-19 15:37:52 +10:00
Trevor Brown
cc0023b022
feat: plugin documentation callback support 🎉 (#757) 2020-07-31 18:47:18 +10:00
Dan Fuchs
d7e1e66c03 Add test for invalid asdf install arguments 2020-07-09 21:18:16 -05:00
Trevor Brown
2a058af9eb
Merge branch 'master' into tb/keep-source 2020-05-08 10:21:59 -04:00
Trevor Brown
309a4f1a12 Don't delete the download directory if the --keep-download flag is passed or the always_keep_download config is set to yes 2020-05-04 15:05:10 -04:00
Jochen Schalanda
3c3f0e67f6
Rename custom plugin-add/plugin-remove for plugins (#684)
Rename custom scripts for `plugin-add` and `plugin-remove` phases in plugins to make clear when they are executed:

`plugin-add` -> `post-plugin-add`
`plugin-remove` -> `pre-plugin-remove`
2020-03-22 12:57:54 +11:00
Jochen Schalanda
57186be6d9
Support customizing plugin-add and plugin-remove
* Add support for custom `plugin-add` and `plugin-remove` in plugins
* Add configurable command hooks for plugin installation and removal

```shell
pre_asdf_plugin_remove = echo will remove plugin ${1}
pre_asdf_plugin_remove_foo = echo will remove plugin foo
post_asdf_plugin_remove = echo removed plugin ${1}
post_asdf_plugin_remove_foo = echo removed plugin foo
```

Closes #670
2020-03-21 14:59:33 +01:00
Trevor Brown
7a05244ece Add legacy plugin fixture 2020-03-06 19:13:53 -05:00
Victor Hugo Borja
b8dc5f1604 Run shfmt on bash files 2019-11-29 10:15:38 -06:00
Fernando Crespo
03394831a8 Merge remote-tracking branch 'upstream/master' into better-which-command 2018-11-12 15:35:19 -02:00
mig4
f994b07a2c
Optimise listing all plugins
When checking if a plugin is installed (to display a flag) it is not
necessary to loop through all installed plugins, since we already have
a name we can check directly.

Also expand test case to test this code path too.
2018-10-27 20:05:02 +01:00
Fernando Crespo
46e5f7427f Updated which command.
Should fix #205
2018-10-21 00:47:13 -03:00
Diego Nogueira Teixeira
20bb61963d Implemented tests for shim generation only for executable files, not directories. 2018-09-19 09:00:11 -03:00
Jonathan Knapp
808a8d48b7
Fix many shellcheck issues; ignore a few others 2017-09-04 10:09:47 -04:00
Daniel Perez
b9fae70c0d Add plugin-list-all command 2017-08-25 11:29:23 +09:00
Victor Borja
eecd1f36d1 Test produced shims by actually running them.
Test using a dummy executable.

Closes #127
2016-12-13 13:32:49 -06:00
Victor Borja
7512d9abf4 Add metadata to shims
When a shim is created, add plugin metadata so we can later know which shims belong to which plugins, this will help aid with removing unused shims on uninstall. See #67

```
# asdf-plugin: ${plugin_name}”
```

Thanks to @duijf for the metadata proposal.
2016-12-10 12:17:50 -06:00
Kevin Rockwood
c6d814e247 Unify .tool-versions and legacy file search 2016-08-14 09:10:24 +09:00
Kevin Rockwood
ca1273e7d4 Rename which to current (#79)
* Rename `asdf which` -> `asdf current`

* Output `set by $path` with current command

* Use dummy plugin in current_command test

* Hide "set by" message if derived from legacy file
2016-07-25 00:47:17 +09:00
Daniel Perez
3af5d21067 Set ASDF_CONCURRENCY when installing 2016-07-01 16:42:59 +09:00