asdf/CHANGELOG.md
2019-03-16 20:00:30 +00:00

7.5 KiB

Changelog

0.7.1-dev

Features

  • Add documentation about using multiple versions of the same plugin

Fixed Bugs

  • Restore support for legacy file version

0.7.0

Features

  • Shims can be invoked directly via asdf exec <command> [args...] without requiring to have all shims on path (#374).

  • New asdf env <command> can be used to print or execute with the env that would be used to execute a shim. (#435)

  • Configurable command hooks from .asdfrc (#432, #434) Suppose a foo plugin is installed and provides a bar executable, The following hooks will be executed when set:

    pre_asdf_install_foo = echo will install foo version ${1}
    post_asdf_install_foo = echo installed foo version ${1}
    
    pre_asdf_reshim_foo = echo will reshim foo version ${1}
    post_asdf_reshim_foo = echo reshimmed foo version ${1}
    
    pre_foo_bar = echo about to execute command bar from foo with args: ${@}
    post_foo_bar = echo just executed command bar from foo with args: ${@}
    
    pre_asdf_uninstall_foo = echo will remove foo version ${1}
    post_asdf_uninstall_foo = echo removed foo version ${1}
    
  • New shim version meta-data allows shims to not depend on a particular plugin nor on its relative executable path (#431) Upgrading requires shim re-generation and should happen automatically by asdf-exec: rm -rf ~/.asdf/shims/ followed by asdf reshim

  • Added lots of tests for shim execution. We now make sure that shim execution obeys plugins hooks like list-bin-paths and exec-path.

  • Shims now are thin wrappers around asdf exec that might be faster for most common use case: (versions on local .tool-versions file) but fallbacks to slower get_preset_version_for which takes legacy formats into account.

  • Shim exec recommends which plugins or versions to set when command is not found.

  • asdf reshim without arguments now reshims all installed plugins (#407)

  • Add asdf shim-versions <executable> to list on which plugins and versions is a command available. (#380, #433)

  • Add documentation on installing dependencies via Spack (#471)

Fixed Bugs

  • Fix update command so it doesn't crash when used on Brew installations (#429, #474, #439, #436)

0.6.3

Features

  • Make which command work with any binary included in a plugin installation (#205, #382)
  • Add documentation for documentation website (#274, #396, #422, #423, #427, #430)

Fixed Bugs

  • Silence errors during tab completion (#404)
  • Remove unused asdf shims directory from PATH (#408)
  • Fix issues with update command that prevented updates for installations in custom locations (#411)
  • Fix shellcheck warnings on OSX (#416)
  • Add tests for versions set by environment variables (#417, #327)
  • Continue list output even when version is not found (#419)
  • Fixed user paths for fish (#420, #421)
  • Custom exec path tests (#324, #424)

0.6.2

Fixed Bugs

  • Fix system logic so shims directory is removed from PATH properly (#402, #406)
  • Support .tool-versions files that don't end in a newline (#403)

0.6.1

Features

  • Make where command default to current version (#389)
  • Optimize code for listing all plugins (#388)
  • Document $TRAVIS_BUILD_DIR in the plugin guide (#386)
  • Add --asdf-tool-version flag to plugin-test command (#381)
  • Add -p flag to local command (#377)

Fixed Bugs

  • Fix behavior of current command when multiple versions are set (#401)
  • Fix fish shell init code (#392)
  • Fix plugin-test command (#379)
  • Add space before parenthesis in current command output (#371)

0.6.0

Features

  • Add support for ASDF_DATA_DIR environment variable (#275, #335, #361, #364, #365)

Fixed Bugs

  • Fix asdf current so it works when no versions are installed (#368, #353)
  • Don't try to install system version (#369, #351)
  • Make resolve_symlink function work with relative symlinks (#370, #366)
  • Fix version changing code so it preserves symlinks (#329, #337)
  • Fix ShellCheck warnings (#336)

0.5.1

Features

  • Better formatting for asdf list output (#330, #331)

Fixed Bugs

  • Correct environment variable name used for version lookup (#319, #326 #328)
  • Remove unnecessary cd in asdf.sh (#333, #334)
  • Correct Fish shell load script (#340)

0.5.0

Features

  • Changed exit codes for shims so we use codes with special meanings when possible (#305, #310)
  • Include plugin name in error message if plugin doesn't exist (#315)
  • Add support for custom executable paths (#314)
  • asdf list with no arguments should list all installed versions of all plugins (#311)

Fixed Bugs

  • Print "No version set" message to stderr (#309)
  • Fix check for asdf directories in path for Fish shell (#306)

0.4.3

Features

  • Suggest action when no version is set (#291, #293)

Fixed Bugs

  • Fix issue with asdf not always being added to beginning of $PATH (#288, #303, #304)
  • Fix incorrect ASDF_CONFIG_FILE environment variable name (#300)
  • Fix asdf current so it shows environment variables that are setting versions (#292, 294)

0.4.2

Features

  • Add support for ASDF_DEFAULT_TOOL_VERSIONS_FILENAME environment variable (#201, #228)
  • Only add asdf to PATH once (#261, #271)
  • Add --urls flag to plugin-list commands (#273)

Fixed Bugs

  • Incorrect grep command caused version command to look at the wrong tool when reporting the version (#262)

0.4.1

Features

  • asdf install will also search for .tool-versions in parent directories (#237)

Fixed Bugs

  • bad use of sed caused shims and .tool-versions to be duplicated with -e (#242, #250)
  • asdf list now outputs ref-versions as used on .tool-versions file (#243)
  • asdf update will explicitly use the origin remote when updating tags (#231)
  • All code is now linted by shellcheck (#223)
  • Add test to fail builds if banned commands are found (#251)

0.4.0

Features

  • Add CONTRIBUTING guidelines and GitHub issue and pull request templates (#217)
  • Add plugin-list-all command to list plugins from asdf-plugins repo. (#221)
  • asdf current shows all current tool versions when given no args (#219)
  • Add asdf-plugin-version metadata to shims (#212)
  • Add release.sh script to automate release of new versions (#220)

Fixed Bugs

  • Allow spaces on path containing the .tool-versions file (#224)
  • Fixed bug in --version functionality so it works regardless of how asdf was installed (#198)

0.3.0

Features

  • Add update command to make it easier to update asdf to the latest release (#172, #180)
  • Add support for system version to allow passthrough to system installed tools (#55, #182)

Fixed Bugs

  • Set GREP_OPTIONS and GREP_COLORS variables in util.sh so grep is always invoked with the correct settings (#170)
  • Export ASDF_DIR variable so the Zsh plugin can locate asdf if it's in a custom location (#156)
  • Don't add execute permission to files in a plugin's bin directory when adding the plugin (#124, #138, #154)

0.2.1

Features

  • Determine global tool version even when used outside of home directory (#106)

Fixed Bugs

  • Correct reading of ref: and path: versions (#112)
  • Remove shims when uninstalling a version or removing a plugin (#122, #123, #125, #128, #131)
  • Add a helpful error message to the install command (#135)

0.2.0

Features

  • Improve plugin API for legacy file support (#87)
  • Unify asdf local and asdf global version getters as asdf current (#83)
  • Rename asdf which to asdf current (#78)

Fixed Bugs

  • Fix bug that caused the local command to crash when the directory contains whitespace (#90)
  • Misc typo corrections (#93, #99)

0.1.0

  • First tagged release