Skip to content

@matejak matejak released this Jun 30, 2019 · 17 commits to master since this release

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).


  • 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).
Assets 2

@matejak matejak released this Jan 26, 2019 · 41 commits to master since this release

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.


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

@matejak matejak released this Aug 14, 2018 · 55 commits to master since this release

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.


  • 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.
Assets 2

@matejak matejak released this Jul 18, 2018 · 62 commits to master since this release

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.


  • 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.
Assets 2

@matejak matejak released this Mar 4, 2018 · 93 commits to master since this release


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

@matejak matejak released this Feb 27, 2018 · 98 commits to master since this release

New features:

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


  • 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.
Assets 2
Jan 27, 2018
Version release

@matejak matejak released this Dec 6, 2017 · 138 commits to master since this release

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


  • 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).
Assets 2

@matejak matejak released this Sep 3, 2017 · 152 commits to master since this release

New features:

  • The generated shell case statement is considerably nicer.
  • Support for having more Argbash versions simultainously (applies to Argbash version that implement the make alt(un)install targets)
  • Argbash functionality is now encapsulated in shell functions.
  • API macros have checks against wrong number of arguments supplied.
  • Short options can be also numeric.
  • Introduced DIY mode as a preview feature.
  • A Docker image of argbash is available on Docker hub. Thanks to Peter Cummuskey!


  • Improved feedback when users provide invalid input (fixed #8, #9).
  • The underlying code has been cleaned and distributed into multiple files.
  • Fixed m4_list_indices to be consistent with m4_list_nth.
  • Much-improved handling of typed arguments (fixed #25, #26).
  • Improved documentation. Thanks to Bianca Tamayo!
Assets 2

@matejak matejak released this Apr 10, 2017 · 210 commits to master since this release

The main highlight of this version of argbash is the getopts feature parity - the generated code is supposed to support all features of getopts related to short options.

New features:

  • Implemented getopts-like behavior (so e.g. -gIinclude equals to -g -I include etc.).
  • Improved feedback in case of mismatch between expected / received arguments.


  • Argbash-powered scripts with positional arguments can be sourced consecutively without having to manually perform variable reset.
  • Fixed issue #7 with newlines in help strings.
  • The argbash.spec file has been corrected, so there is a hope that Argbash will make it to Fedora Linux distribution.
Assets 2
You can’t perform that action at this time.