Skip to content

v1.0.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 20 Dec 15:10
4263126

1.0.0 (2024-12-20)

⚠ BREAKING CHANGES

  • Enable pipefail (#1608)
  • plugin list exit code 0 when no plugins are installed (#1597)
  • 0 exit code for success when adding an existing plugin (#1598)
  • fish: don't resolve symlinks for ASDF_DIR (#1583)
  • Remove files containing only asdf wrapper functions (#1525)
  • align Fish entrypoint behaviour with other shells (#1524)
  • do not remove items from PATH in POSIX entrypoint (#1521)
  • rework POSIX entrypoint for greater shell support (#1480)

Features

  • add Golang tests to GitHub test workflow (3a9f539)
  • add linting for Golang to GitHub lint workflow (f41ce90)
  • add plugin location when update the plugin (#1602) (36c7024)
  • add post update plugin support (#1049) (304f72d)
  • asdf latest defer to plugin to determine the latest version (#938) (664d82e)
  • case-insensitive filtering of unstable versions in latest (#1139) (e61e3d9)
  • completions: bash improvements (#1329) (7c802c3)
  • correct description for version preceded by star (04fe7e3)
  • Disable short-name repository with config value (#1227) (18caea3)
  • display plugin repo refs alongside urls in info cmd (#1014) (cd0a6a7)
  • Displays a warning when a plugin from the tools-version list does not exist (#1033) (9430a39)
  • Elvish Shell support (#1066) (cc7778a)
  • golang-rewrite: add boilerplate for cobra CLI commands (d06d71f)
  • golang-rewrite: add cobra library as dependency (7d5281a)
  • golang-rewrite: add config methods (8ad3472)
  • golang-rewrite: add placeholders for plugin subcommands (b40beb6)
  • golang-rewrite: BATS test fixes & latest command (b23e5a3)
  • golang-rewrite: build dev release binaries (bc05110)
  • golang-rewrite: build golang asdf for BATS integration tests (477e9d5)
  • golang-rewrite: compile asdf version into Go binaries (6d708b2)
  • golang-rewrite: correct asdf-version workflow step to produce version as output (572ed07)
  • golang-rewrite: correct asdf-version workflow step to produce version as output (19a0597)
  • golang-rewrite: create asdf current command (b33ab64)
  • golang-rewrite: create asdf exec command (b966ca6)
  • golang-rewrite: create asdf list and asdf list all commands (8db188a)
  • golang-rewrite: create asdf uninstall command (3fd4a83)
  • golang-rewrite: create asdf where command (09d06ff)
  • golang-rewrite: create asdf which command (d2afb85)
  • golang-rewrite: create RunCallback method for Plugin struct (778ab34)
  • golang-rewrite: create shims.FindExecutable function for shim execution (9f09f78)
  • golang-rewrite: create versions.InstallOneVersion function (6568891)
  • golang-rewrite: create hooks (771f184)
  • golang-rewrite: create install command (8313ebc)
  • golang-rewrite: create installs and installtest packages to avoid circular dependency (be52d8f)
  • golang-rewrite: create internal/resolve package (c2e5ee6)
  • golang-rewrite: create Makefile (9097696)
  • golang-rewrite: create plugin list command (ad0907a)
  • golang-rewrite: create plugin remove command (2b02f51)
  • golang-rewrite: create plugin update command (c480044)
  • golang-rewrite: create pluginAddCommand function for plugin add command action (26b91aa)
  • golang-rewrite: create pluginindex package (202cdae)
  • golang-rewrite: create plugins/git package to store plugin Git operations (325cd33)
  • golang-rewrite: create settings and config structs for loading config (07b5813)
  • golang-rewrite: create shimversions command (822e14c)
  • golang-rewrite: create version 0.14 to 0.15 upgrade guide (53cd454)
  • golang-rewrite: create versions.Latest function (9f6a65f)
  • golang-rewrite: full version resolution (bd7ab9a)
  • golang-rewrite: get all install_command.bats tests passing (b6ec89f)
  • golang-rewrite: get remaining shim_exec.bats tests passing (162cb8e)
  • golang-rewrite: implement asdf help command (d94bace)
  • golang-rewrite: implement asdf plugin list all command (e7df5ff)
  • golang-rewrite: implement asdf plugin test command (369beeb)
  • golang-rewrite: implement asdf env command (26a3815)
  • golang-rewrite: implement asdf plugin extension commands (ccc98ad)
  • golang-rewrite: info command (447acd1)
  • golang-rewrite: initialize golang module (72c20b1)
  • golang-rewrite: introduce Version struct, get some shim_exec.bats tests passing (924eecf)
  • golang-rewrite: make bats available for golang tests (f5a5967)
  • golang-rewrite: misc. plugin improvements (3af0291)
  • golang-rewrite: misc. version improvements (9ed4216)
  • golang-rewrite: misc. version improvements part 2 (b9e79e6)
  • golang-rewrite: more asdf plugin remove tests (626bde0)
  • golang-rewrite: more shim exec fixes (f639f8a)
  • golang-rewrite: more work to get install_command.bats test passing (c0963a3)
  • golang-rewrite: move all Git code to git package (cb49b64)
  • golang-rewrite: offline Go tests (f74efbf)
  • golang-rewrite: PluginAdd function (15e1f06)
  • golang-rewrite: re-organize Go code (620c0d8)
  • golang-rewrite: refactor completion code and move all packages except cmd into internal (518a0fa)
  • golang-rewrite: remove asdf update command to prepare for Go version (#1806) (15571a2)
  • golang-rewrite: rename module and move main pacakge to cmd/asdf (5d5d04f)
  • golang-rewrite: run bats integration tests in golang (2fc8006)
  • golang-rewrite: self-contained completion code (c859384)
  • golang-rewrite: set variables for bats integration tests (2951011)
  • golang-rewrite: setup Golang release GitHub workflow (c5092c6)
  • golang-rewrite: setup goreleaser (3f9744d)
  • golang-rewrite: shim generation 2 (985c181)
  • golang-rewrite: shim generation part 1 (18e21c9)
  • golang-rewrite: update upgrade guide (0058988)
  • golang-rewrite: use plugin index (8394e85)
  • golang-rewrite: use version type when generating shims (5266ba5)
  • golang-rewrite: version file parsing (3155dc3)
  • improved completions for version in commands (82be580)
  • latest: adds the flag --all to the latest command (#1096) (f85fef5)
  • mark current resolved versions in asdf list output (#762) (5ea6795)
  • Support configurable ASDF_CONCURRENCY (#1532) (684f4f0)
  • support nushell (#1355) (274a638)
  • Support PowerShell Core (#1522) (213aa22)
  • toggle off repo sync completely (#1011) (a3ba5a7)
  • upgrade elvish to 0.17.0 (#1159) (824550e)

Bug Fixes

  • asdf info show BASH_VERSION & all asdf envs (#1513) (a1b5eee)
  • plugin list exit code 0 when no plugins are installed (#1597) (a029c00)
  • plugin test git-ref to use plugin repo default branch (#1694) (6d8cf9d)
  • reshim did not rewrite executable path (#1311) (5af7625)
  • 0 exit code for success when adding an existing plugin (#1598) (4dd1904)
  • add asdf to list of banned commands (#1224) (39909e0)
  • add missing "does not add paths to PATH more than once" test for elvish (#1275) (3c55167)
  • Add test for nushell integration and fix some bugs (#1415) (60d4494)
  • Adds "grep -P" to the list of banned commands (#1064) (8a515f4)
  • align Fish entrypoint behaviour with other shells (#1524) (8919f40)
  • Allow path: versions to use ~ (#1403) (670c96d)
  • allow plugin callbacks to be in any language (#995) (2ad0f5e)
  • always use ASDF_DEFAULT_TOOL_VERSIONS_FILENAME for filename when present (#1238) (711ad99), closes #1082
  • append trailing newline to .tool-versions files when missing (#1310) (eb7dac3), closes #1299
  • assign default values to all internal variables (#1518) (86477ee)
  • avoid mention of ASDF_NU_DIR (#1660) (dfea89c)
  • Ban ls command (#1141) (87137e4)
  • ban grep long flags (#1117) (6e4c39c)
  • Ban use of 'test' (#1383) (ec972cb)
  • bash completion for latest command (#1472) (2606a87)
  • Better handling with paths that include spaces (#1485) (bbcbddc)
  • clarify the wording when no version is set (#1088) (4116284)
  • completions for asdf plugin list (#1061) (43412aa)
  • completions: Address two Bash completion bugs (#1770) (ebdb229)
  • correct order of checks in conditional for adding a missing newline (#1418) (4125d2b), closes #1417
  • Correct typo on getting started page (#1086) (4321980)
  • create install directory with mkdir -p (#1563) (d6185a2)
  • do not print find errors (#1102) (5992abb)
  • do not remove items from PATH in POSIX entrypoint (#1521) (b6d0ca2)
  • Do not use pwd (dd37b6f)
  • Do not use type not exported on older Python versions (#1409) (7460809)
  • don't generate on error if backup file doesn't exists (#1057) (288468f)
  • don't invoke asdf inside asdf commands (#1208) (27f7ef7)
  • don't override existing ASDF_DIR (#1008) (73efc9f)
  • elvish: prepend asdf paths to $PATH (#1174) (682b7a1)
  • Enable pipefail (#1608) (4085e55)
  • enforce & use consistent function definitions (#1464) (e0fd7a7)
  • enforce consistent shell redirection format (#1533) (1bc205e)
  • ensure shims get created when data dir has spaces (#996) (39c9999)
  • excludes "milestone" releases in "latest" command (#1307) (5334d1d), closes #1306
  • fish: don't resolve symlinks for ASDF_DIR (#1583) (d1a563d)
  • fish: use builtin realpath over system one (#1637) (5ac3032)
  • fish: use PATH instead of fish_user_paths (#1709) (5327697)
  • Fix plugin-test arg parsing (#1084) (c911f2d)
  • fixing bats (#1215) (a9caa5b)
  • force lwrcase plugin name fix capitalization mismatch errs (#1400) (196a05b)
  • full_version_name is not available here (#1031) (8490526)
  • get invalid ASDF_DATA_DIR when exec asdf shims by non-shell (#1154) (b9962f7)
  • golang-rewrite: asdf exec and asdf env command fixes (7dfa8b4)
  • golang-rewrite: add missing goreleaser argument (5a24864)
  • golang-rewrite: allow directories returned by list-bin-paths to be absent from the file system (80ac9bb)
  • golang-rewrite: attempt to fix goreleaser GitHub workflow (1b3c426)
  • golang-rewrite: comment out all BATS tests (163d6b4)
  • golang-rewrite: correct go build command in lint workflow (87d3c06)
  • golang-rewrite: fix dependencies script on linux (3f17a80)
  • golang-rewrite: set dependencies between release-build jobs (6b45a5e)
  • golang-rewrite: try to fix goreleaser (2a31caf)
  • golang-rewrite: try to get goreleaser action to generate snapshot builds (7439ea9)
  • golang-rewrite: update detect-changes logic for Golang tests (88af4ee)
  • help for extension commands for plugins with hyphens in the name. (#1048) (3e0cb9a)
  • help text as per new feats in #633 (#991) (0d95663)
  • improve formatting of ballad (#1367) (e0c2c31)
  • improve lint and test scripts (#1607) (b320803)
  • improve readability of the non-set nullglob guard (#1545) (f273612)
  • incorrect usage of grep (#1035) (30d27cb)
  • instead /tmp, use TMPDIR if defined (9113623)
  • Introduce ASDF_FORCE_PREPEND variable on POSIX entrypoint (#1560) (5b7d0fe)
  • latest --all correctly report plugins as missing (#1118) (aafe1e5)
  • lint & style errors in bin/asdf (#1516) (13c0e2f)
  • lint errors from scripts/checkstyle.py (#1385) (3492043)
  • list asdf version command under help.txt UTILS section (#1673) (240a5fb)
  • local plugin in then clause too (#1203) (448f750)
  • Make asdf.fish compatible with Fish 3.1.2 (#1590) (e83d71e)
  • make fish shell setup match other shells (#1209) (6fc4bb8)
  • make plugin-test work on alpine linux (#1778) (f5a1f3a)
  • mv dev dep from repo root to subdir to avoid clash (#1408) (5df70da)
  • newline after error msg for ASDF_DIR (#1113) (ac2791e)
  • no longer write temporary files to home directory (#1592) (624604a)
  • nushell language syntax update (#1624) (0ddab5d)
  • nushell PATH conversion to list before filter (#1471) (cd0e12b)
  • Nushell plugin list --urls (#1507) (9363fb2)
  • nushell plugin list all (#1501) (#1502) (c5b8b3c)
  • nushell spread operator (#1777) (a0ce37b)
  • nushell: Use def --env instead of def-env (#1681) (3b8f400)
  • nushell: Use correct env var for shims dir (#1742) (2f07629)
  • Only display the "can't keep downloads" warning when asked to keep downloads (#1756) (44f3efb)
  • only iterate over directories in the plugins/ directory (#1228) (788ccab)
  • plugin extension commands to not require bin/ directory (#1643) (61420ad)
  • Prepend asdf directories to the PATH in Nushell (#1496) (745950c)
  • Prevent unbound variable error with nounset in asdf.sh (#1158) (b7dd291)
  • Quote commands correctly in plugin-test (#1078) (69ff2d0)
  • regex validate plugin names on plugin add cmd (#1010) (7697e6e)
  • Remove == inside [ (#1421) (d81b81f)
  • remove comments from whole file instead of line by line for performance (#1198) (de6e22f)
  • Remove files containing only asdf wrapper functions (#1525) (00fee78)
  • remove leading asterick in Fish completion (#1543) (198ced5)
  • Remove unecessary backslashes (#1384) (15faf93)
  • Remove usage of $(pwd) in favor of $PWD (f522ab9)
  • rename internal function asdf_tool_versions_filename (#1544) (b36ec73)
  • rename internal plugin repository functions (#1537) (5367f1f)
  • rework POSIX entrypoint for greater shell support (#1480) (3379af8)
  • Sed improvements (#1087) (4b93bc8)
  • sed re error trailing backslash on FreeBSD (#1046). (#1047) (47e8fb0)
  • set default shell version values on POSIX entrypoint (#1594) (4d5f22d)
  • shorthand grep options for alpine support (#1106) (234778a)
  • support asdf shim-versions completions in fish & bash (#1554) (99623d7)
  • support latest with filter on local and global (#633) (5cf8f89)
  • support nushell v0.75.0 (#1481) (dd8d399)
  • Typo in POSIX entrypoint (#1562) (6b2ebf5)
  • update elvish to 0.18.0 (5a89563)
  • update event trigger for doc-version workflow (#1232) (0bc8c3a)
  • update GitHub workflows to work private asdf Go fork (3e11bd4)
  • update plugin-add regex to support other languages (#1241) (92d005d), closes #1237
  • updating references to legacy github.io site (#1240) (738306b)
  • use ELVISH_VERSION to specify elvish test version (#1276) (72c3a23)
  • Use more idiomatic fish (#1042) (847ec73)
  • use universal scope for fish_user_paths (#1699) (0ffee72)
  • wait until the plugin update are finished (#1037) (7e1f2a0)
  • warn if .tool-versions or asdfrc contains carriage returns (#1561) (097f773)
  • warn if plugin does not support keeping downloads if configured (#1644) (19515ed)
  • warn when any ./lib/commands are marked as executable (#1593) (2043a09)
  • when download path got removed, it should use -f to force delete the download files (#1746) (221507f)

Performance Improvements

  • only create dirs if they do not already exist (#1566) (b6b8074)