Skip to content

Releases: matejak/argbash

2.11.0

22 May 22:30
Compare
Choose a tag to compare

After long time, a new release is out! It fixes a couple of issues, but also adds new convenience features that people requested. Thanks to the whole Argbash community for your support!

Buxfixes:

  • #!/bin/bash is no longer the shebang. The more portable #!/usr/bin/env bash is used instead (#185).
  • Indentation is consistent in validation functions (#143)
  • Fixed bug preventing short options to have capital letters (#199)
  • Scripts with strict argument checking don't abort when executed with errexit (#163)

New features:

  • The new Argbash macro ARGBASH_INDICATE_SUPPLIED allows you to get information on whether an argument has been explicitly passed on the commandline. Big thanks to Kevin Stravers (@kstrafe) for his heroic effort!
  • A new excised mode that doesn't contain generated code has been introduced (#186)

Incompatible changes (minor):

  • Archlinux packaging files were removed, because Argbash has a proper Archlinux package, and the redundant code in the project would require maintenance (#179)
  • The --wrap argument of argbash-init was removed, as it was not working at all, and its added value is negligible (#144)

2.10.0

22 Sep 19:54
2.10.0
Compare
Choose a tag to compare

Buxfixes:

  • argbash-init is able to handle empty string as the only argument without being puzzled (#130).
  • Error handling of script working directory detection now more robust (#134).

New features:

  • Argbash in the container has no longer the terminal output limitation caused by the crlf line ending (#129). Thanks to Felipe Santos (@felipecrs)!.
  • The ARG_USE_PROG implementation was missing. Therefore, it was implemented as ARG_USE_PROGRAM using a slightly different interface.

2.9.0

31 Jul 23:05
2.9.0
Compare
Choose a tag to compare

It took Argbash one year to get another update, but 2.9.0 brings numerous bugfixes, noteworthy new features, and integration of the Docker Hub with the repository has been vastly improved.

Buxfixes:

  • Fixed typo in argbash-init and updated obsolete/incaccurate hints (#97).
  • Fixed incorrect permission of non-script output files (#104).
  • Increased MacOS compatibility by removing terminator from the chmod invocation (#107).

New features:

  • Increased flexibility of the help option (#92).
  • Improved argbash-init script template (#85).
  • Increased flexibility of the version option (#123).
  • Added a convenience function for module loading (#119).
  • Added a possibility to the argbash tool to generate the script in-place, exposed as the -i option.

2.8.1

30 Jun 19:39
2.8.1
Compare
Choose a tag to compare

This release fixes many issues, and it also doesn't enable the readlink -e functionality introduced in 2.8.0. So there is a slight breakage of backwards compatibility for those who use the standalone mode and who use symlinks.

Incompatible changes (minor):

  • The DEFINE_SCRIPT_DIR macro doesn't resolve symlinks as it started to do so in 2.8.0, use DEFINE_SCRIPT_DIR_GNU if you need the functionality.

New features (minor):

  • The help message now contains reference for one-of argument types (#76).

Bugfixes:

  • The environment variables help message has been fixed (#79).
  • The manpage generation works when long description is supplied (#78).
  • The DEFINE_SCRIPT_DIR macro doesn't use readlink -e any more (#74).
  • Completion generation works even when there are no options followed by value (#77).

2.8.0

26 Jan 22:06
2.8.0
Compare
Choose a tag to compare

New features:

  • Allow argbash and argbash-init to be run from symbolic links.
  • Allow scripts generated by argbash-init with complete separation (-s -s) to be run from a symbolic link.
  • Implemented output to generate manpages using the rst2man utility (fixes #37).
  • Introduced the ARG_VERSION_AUTO macro.

Bugfixes:

  • Double quotes in help messages are escaped (fixes #61).
  • Fixed regression that allowed duplicate short options (fixes #58).

2.7.1

14 Aug 23:59
2.7.1
Compare
Choose a tag to compare

This is a minor feature / bugfix release. The bash completion has seen some love, and the docopt output regression has been fixed.

New features:

  • The bash completion now supports arguments of one-of-restricted values.

Bugfixes:

  • Tests pass when there is no dash shell installed.
  • The double-dash handling when -- is the last argument has been improved.
  • The generated bash completion is now complementing (i.e. not shadowing) the default bash completion.
  • Docopt fatal regression has been fixed.
  • Tests were added for docopt output.

2.7.0

18 Jul 22:57
2.7.0
Compare
Choose a tag to compare

2.7.0 (2018-07-19)

This version of Argbash brings the long-awaited POSIX shell output mode.
The generated code uses the getopts builtin if applicable, and although it doesn't support all features of full Bash script output, the most common functionality works.

New features:

  • ARGBASH_WRAP works recursively - you can wrap wrapped scripts.
  • Introduced new output - the strict POSIX shell output.

Bugfixes:

  • Fixed comment of the evaluate_strictness function in commented mode.
  • ARG_OPTIONAL_BOOL won't let you specify other default values than on or off.
  • Fixed bash completion containing a leading newline.
  • Fixed Argbash bash completion generated filename.

2.6.1

04 Mar 00:00
2.6.1
Compare
Choose a tag to compare

Bugfixes:

  • Fixed the installation issue related to bash completion.
  • Allowed docopt and completion output even in case of stdin input and stdout output.

2.6.0

27 Feb 23:29
2.6.0
Compare
Choose a tag to compare

New features:

  • Initial support for bash completion.
  • Introduction of the --strip argument to argbash (deprecates the --library option).
  • Initial support for docopt output.

Bugfixes:

  • Fixed wrapping of scripts with repeated optional arguments.
  • All scripts + tests are checked by Shellcheck.
  • The ARGBASH_WRAP macro now supports looking for templates in subdirectories.
  • Documentation expansion.

2.5.1

06 Dec 23:00
2.5.1
Compare
Choose a tag to compare

This is a bugfix release that will please advanced users of Argbash.

Bugfixes:

  • Fixed argbash-init corner cases (wrong output filename).
  • Corrected argbash-init hint mode.
  • Allowed argbash to wrap scripts in files with no extension.
  • Fixed compatibility with the -e (i.e. "strict") mode (fixed #30).