Releases: davetron5000/gli
v2.12.2
- Fix crashing bug in the
_doc
command. - Dropped official support for 1.8.7. This version of Ruby is long-deprecated and while GLI should continue to work, the tools needed to develop GLI exhibit strange behavior that cause tests to fail. Rather than lock to older versions of the tools or waste time figuring out the problem, I've removed 1.8.7 from
.travis.yml
. I don't plan to introduce 1.9 or 2.0-only code to GLI, but am not going to spend time making sure it works on 1.8.7
v2.12.1
- Since use of
arguments :strict
requires thatsubcommand_option_handling :normal
also be set, GLI will blow up if that's not the case (as opposed to just not working). - Scaffolding now puts
subcommand_option_handling :normal
in the new app, as was originally intended, but not ever actually done for some reason o_O. - Improved documentation around
arguments
v2.12.0
-
Support for "strict" argument parsing. That is, when you specify:
arg :url
GLI will check if that arg was given on the command line, and generate an error if not. Note that by default, existing apps will not get this feature without adding
arguments :strict
to their binfile. Newly-scaffolded apps will have this by default. Thanks @calestar (see #187)
v2.11.0
These features and fixes brought to you by the conscientious @calestar! Many thanks!
-
New Feature - document multiple arguments by repeated calls to
arg
# previously arg_name "src dest [second_dest]" # currently arg :src arg :dest arg :second_dest, :optional
This doesn't enforce required v optional, but paves the way for it, and makes it easier to build up the arguments help string (see #184 and #180, and http://davetron5000.github.io/gli/rdoc/classes/GLI/DSL.html#method-i-arg)
-
Better help output when multiple required flags are omitted (see #177 and #182)
-
Getting help with
GLI_DEBUG
set no longer exits nonzero (getting help withoutGLI_DEBUG
set previously exited zero, so this makes the behavior of getting help more consistent. See #183 and #181. Thanks @calestar!)
v2.10.0
v2.9.0
- Synopsis can be shown in a more compact format for complex apps (See #160)
- Full synopsis now shows flags and switches in the correct location on the command line (See #162)
- Flags can now be made required and GLI will error if they are omitted (See #161)
- Generated gemspec now uses
git
by default to get the file list (See #159, thanks to @JesseHerrick!)
Also, some documentation updates:
v2.8.1
v2.8.0
- Fixes #154 courtesy @tokengeek and [@jonhl] allowing
--help
to work as one would expect with subcommands.
v2.7.0
- Can now re-open commands later on, which can allow
commands_from
extensions. See #152 (which fixes #144 more or less). Thanks @jonhnl for the fix! - When a custom
on_error
block evaluates to false, andGLI_DEBUG
is set, GLI will output a message explaining that custom error handling has been skipped. See #151 - When a user requests help via
--help
on the command line, the exception used to make that work will not cause theon_error
block to be called. See #150
v2.6.2
- When the
pre
block returns a falsey value, it now does so via a special-purpose exception and also provides a message that the preconditions failed (see #146) - Previously, doing
app --help command
would executecommand
. Now, it acts the same asapp help command
, i.e. gets help for that command (see #149)