Commit Graph

259 Commits

Author SHA1 Message Date
Josh Soref
e1fd8ad970
ci: tolerate the lack of tags in the repository (#1296) 2022-07-13 15:28:47 +10:00
Josh Soref
eaf2215cb8
chore: Fix spelling (#1289)
chore: Fix spelling
2022-07-05 09:40:33 -04:00
Jonathan Beverly (jrbeverly)
18caea3eb7
feat: Disable short-name repository with config value (#1227)
Co-authored-by: jthegedus <jthegedus@hey.com>
2022-06-28 09:47:49 +10:00
Elijah
3c55167a68
fix: add missing "does not add paths to PATH more than once" test for elvish (#1275) 2022-06-25 07:35:08 -04:00
James Hegedus
21bc411915
ci: add latest OSs to testing matrix, bump BATS, shfmt, shellcheck (#1260)
* ci: add latest OSs to testing matrix
* ci: bump bats & shellcheck & shfmt
* chore: format with latest shfmt
2022-06-24 19:20:27 +10:00
botp
5ea67953be
feat: mark current resolved versions in asdf list output (#762)
Co-authored-by: botp <botpena@example.com>
Co-authored-by: James Hegedus <jthegedus@hey.com>
2022-06-21 22:54:02 +10:00
Trevor Brown
92d005dacd
fix: update plugin-add regex to support other languages (#1241)
[:alpha:] and [:digit:] character classes support characters from other
languages whereas ranges like a-z and 0-9 may not.

Fixes #1237
2022-06-07 08:43:02 -04:00
Trevor Brown
711ad99104
fix: always use ASDF_DEFAULT_TOOL_VERSIONS_FILENAME for filename when present (#1238)
* fix: always use ASDF_DEFAULT_TOOL_VERSIONS_FILENAME for filename when present
* fix: correct version command unit tests for ASDF_DEFAULT_TOOL_VERSIONS_FILENAME

Fixes #1082
2022-05-27 07:50:04 -04:00
Trevor Brown
788ccab597
fix: only iterate over directories in the plugins/ directory (#1228)
Fixes part of #1029
2022-05-12 07:48:54 -04:00
Trevor Brown
39909e01af
fix: add asdf to list of banned commands (#1224)
Ban recusive asdf calls as they are inefficient and may introduce bugs.
If you find yourself needing to invoke an `asdf` command from within
asdf code, please source the appropriate file and invoke the
corresponding function.
2022-05-06 09:21:06 -04:00
Bruno Roque
824550ed20
feat: upgrade elvish to 0.17.0 (#1159)
* feat: upgrade elvish to 0.17.0
* Remove || and fix array slice
* Update elvish config path
* Tests use new path
* Escape $ in bats
* Fix legacy assignment in test
2022-02-11 17:19:55 -05:00
David le Blanc
b2b71e6402 Added test for handling config file values containing "=" in their text 2022-01-27 11:20:08 -05:00
Joe Horsnell
b7dd291c98
fix: Prevent unbound variable error with nounset in asdf.sh (#1158)
`asdf` [v0.9.0][1] included a [bug fix][2] to not override an existing ASDF_DIR.

However, if `ASDF_DIR` is not set at all, then this causes an error when using bash `set -u`, or
`set -o nounset` - see [here][3] for additional info.

[1]: https://github.com/asdf-vm/asdf/releases/tag/v0.9.0
[2]: https://github.com/asdf-vm/asdf/pull/1008
[3]: https://mywiki.wooledge.org/BashFAQ/112
2022-01-19 17:00:53 -05:00
Trevor Brown
87137e4103
fix: Ban ls command (#1141)
* Ban `ls` command
* Update banned commands test so it only checks bash and sh files
* Only allow `ls` for resolving symlinks
* Replace `ls` commands with `find`
2021-12-29 12:10:39 -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
Alberto de Murga
aafe1e5304
fix: latest --all correctly report plugins as missing (#1118) 2021-12-09 16:49:24 +11:00
Trevor Brown
6e4c39c244
fix: ban grep long flags (#1117)
Co-authored-by: James Hegedus <jthegedus@hey.com>
2021-12-09 13:17:49 +11:00
Alberto de Murga
f85fef533f
feat(latest): adds the flag --all to the latest command (#1096) 2021-12-05 23:41:27 +11:00
Elijah
cc7778a040
feat: Elvish Shell support (#1066) 2021-11-18 21:05:27 +11:00
Chris Rose
41162849cf
fix: clarify the wording when no version is set (#1088)
Co-authored-by: Chris Rose <offline@offby1.net>
Co-authored-by: jthegedus <jthegedus@hey.com>
2021-11-14 14:35:42 +11:00
Radon Rosborough
c911f2d431
fix: Fix plugin-test arg parsing (#1084) 2021-11-08 09:40:53 +11:00
Eric Nielsen
73efc9fa97
fix: don't override existing ASDF_DIR (#1008) 2021-11-03 09:47:43 +11:00
Max Nordlund
847ec73751
fix: Use more idiomatic fish (#1042)
The use of `.` is deprecated in fish, unlike POSIX shells. We can avoid
calling `psub` and pipe directly into source which does the same thing.

https://fishshell.com/docs/current/cmds/source.html
2021-10-07 09:20:41 -04:00
Alberto de Murga
8a515f49d7
fix: Adds "grep -P" to the list of banned commands (#1064)
Co-authored-by: James Hegedus <jthegedus@hey.com>
2021-10-07 09:58:42 +11:00
Alberto de Murga
9430a39aef
feat: Displays a warning when a plugin from the tools-version list does not exist (#1033)
* feat: Displays a warning when the plugin from the tools-version does not exist

When calling the install command, it tried to look for versions for all
the plugins available and installed them. With this change, it will attempt to
find versions for all the installed plugins and plugins defined in the
`.tool-versions`.

Fixes https://github.com/asdf-vm/asdf/issues/574

* feat: Changes the algorithm to detect not installed plugins

This patch changes the algorithm. It preserves the original logic for
the plugin resolution, but at the same time, reports entries with plugins not
available.

* fix: Addresses the pull request comments.

- Changes the comparison to be strict rather than partial.
- Prints a list of missing plugins.
- Exists if at least one plugin is not present.
- Adds unit tests.
2021-10-01 08:38:57 -04: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
Yasunori Fujie
3e0cb9aaea
fix: help for extension commands for plugins with hyphens in the name. (#1048)
* test: add test for plugin command list in asdf help
* fix: help for plugins containing hyphens
2021-09-23 14:47:26 -04:00
Yasunori Fujie
7e1f2a0d93
fix: wait until the plugin update are finished (#1037) 2021-09-14 09:44:53 -04:00
James Hegedus
a3ba5a794c
feat: toggle off repo sync completely (#1011) 2021-08-04 08:41:19 +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
Mark Yen
39c9999519
fix: ensure shims get created when data dir has spaces (#996) 2021-07-20 14:21:39 +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
Kevin Lane
5cf8f8962f
fix: support latest with filter on local and global (#633)
Co-authored-by: Thomas B Homburg <thomas@homburg.dk>
Co-authored-by: James Hegedus <jthegedus@hey.com>
2021-07-06 21:17:00 +10:00
Neo Hsu
1716afa021
feat: configurable plugin repo last check time (#957)
Co-authored-by: James Hegedus <jthegedus@hey.com>
2021-06-02 14:22:27 +10:00
Trevor Brown
79eca42572 Update banned_commands.bats tests to ignore string literals 2021-05-24 17:30:51 -04:00
Trevor Brown
e121a93716 Update banned_commands.bats
Update banned_commands.bats so commands in comments are ignored and output
is only printed when a banned command is found.
2021-05-21 12:40:23 -04:00
Trevor Brown
f125741fb5 Update code to use . instead of source 2021-05-21 12:03:06 -04:00
Trevor Brown
5ca750edb2 Add source to list of banned commands 2021-05-21 11:58:49 -04:00
Trevor Brown
156a82cc49
Merge pull request #863 from asdf-vm/ban-process-substitution
Ban process substitution from asdf codebase
2021-05-20 08:44:58 -04:00
Matt
a7d3661f6c
fix: insert error handling in list-all & download plugin scripts (#881) 2021-05-19 19:51:45 +10:00
James Hegedus
10d9c1218e
Merge branch 'master' into ban-process-substitution 2021-04-27 19:34:35 +10:00
James Hegedus
456d8e36ca
fix: <plugin update all> to latest commit on default branch for each plugin (#800) 2021-03-02 17:37:05 +11:00
Trevor Brown
dd20022830
Add both the short and long versions of the --sort-versions flag to the banned commands
Related to #755
2021-02-10 14:45:02 -05:00
Trevor Brown
f633811577 Ban process substitution from asdf codebase 2021-02-05 11:28:27 -05:00
Jean-Paul Bonnetouche
0de6910d1f fix: shims break when POSIXLY_CORRECT=1
Process substitution isn't specified by POSIX and makes shims break when called by a script that `export POSIXLY_CORRECT=1` (like gitflow [here](https://github.com/nvie/gitflow/blob/develop/git-flow#L78)).

Here we replace `grep -f <(cmd1) <(cmd2)` with `cmd2 | grep -F "$(cmd1)"` so that we can provide a string instead of a file descriptor and get the same result as before.

(Note: We also check if the result of `cmd1` is empty before running `grep` to get the same behavior as with `-f`. This also prevent crashes if null results are piped to `xargs` and fits nicely with the `with_shim_executable` function that already check the result of `$selected_version` before going on).

Fixes: #581
2021-01-14 13:19:27 +01:00
Aaron Jensen
d2b7e2fceb
Update no plugin installed error message (#818) 2020-12-21 11:00:09 +11:00
Trevor Brown
34593c1766 Fix resolution of relative symlinks
Fixes #366, #625
2020-10-08 10:17:01 -04:00
Trevor Brown
5d5ab1e6b2 Cleanup unused code in plugin update tests 2020-09-28 11:16:04 -04:00
Trevor Brown
2e3dd351b5
chore: basic tests for plugin-update command (#807) 2020-09-27 14:10:26 +10:00