Releases: andsens/docopt.sh
v2.0.2
Install/depend on this package using μpkg:
upkg add 'https://github.com/andsens/docopt.sh/releases/download/v2.0.2/docopt-lib.sh.tar.gz' d6997858e7f2470aa602fdd1e443d89b4e2084245b485e4b7924b0f388ec401e
Changes since v2.0.1:
- Fix bug where choice() didn't consume params on successful matching.
A program likeUsage: prog (a|b) (c|d)
would keep showing the helptext
v2.0.1
Install/depend on this package using μpkg:
upkg add 'https://github.com/andsens/docopt.sh/releases/download/v2.0.1/docopt-lib.sh.tar.gz' 539053da8b3063921b8889dbe752279e3a215d8fa3e2550d6521e094981f26a2
Changes since v2.0.0:
- Make docopt library version available as a variable for sourcing
- Handle escaped doublequotes at the end of the doc
- Fix #24 in a very docopt.sh specific way.
- Fix bug with exit_code
- Bump pytest
v2.0.0
Install/depend on this package using μpkg:
upkg add https://github.com/andsens/docopt.sh/releases/download/v2.0.0/docopt-lib.sh.tar.gz
Major release
This is complete rewrite of the underlying parser for the docopt
language.
docopt.sh now uses docopt-parser to generate an AST.
Error messages are considerably improved, showing (most of the time) what exactly is wrong, outputting the offending line and numbering it. e.g.:
08 --push Push the new tag and branch upstream
~~~~~~
--push is not referenced from the usage section
The bash minification is now more effective, reducing the number of lines (with -n=80) by ~20%.
Some shellcheck warnings have been disabled/fixed, resulting inlined code passing all tests.
Changes since v2.0.0-alpha4:
- Merge branch 'ft-docopt-parser'
- Fix bug where --opt=false threw a user error
v2.0.0-alpha4
Install/depend on this package using μpkg:
upkg add https://github.com/andsens/docopt.sh/releases/download/v2.0.0-alpha4/docopt-lib.sh.tar.gz
v2.0.0-alpha4
Changes since v2.0.0-alpha3:
- github actions: Create consistency between version names
v2.0.0-alpha3
v2.0.0-alpha3
Changes since v2.0.0-alpha2:
- Fix bug where testdepth would not be decreased on failed match
- Include comments showing what part a specific node is parsing
- Avoid shellcheck warning when parsing is a no-op
v2.0.0-alpha2
v2.0.0-alpha1
Changes since v1.0.0:
- github actions: Add docopt-lib.sh release job
- Update list of bash versions to test with
- Don't test in python < 3.11 any longer
- Add test to ensure multibyte chars work with the usage substring
- Leave $DOCOPT_PREFIX/$p unquoted and add shellcheck ignores
- minify: Split up single-quoted strings over multiple lines
- Improve code comments
- Reduce parser size by reusing one varnames array
- Reduce parser size by concatenating eval statements
- Use merge_identical_nodes to reduce parser size
- Remove need for $left array
- Add abstract documentation for how it all works
- Save entire options meta to a single array
- Fix minifying issue with single quoted strings
- Reduce parser size by ~30 lines
- Shorter varname for $prefix ($p)
- Considerably improve minification of the bash library
- Add inline documentation to the bash parsing library
- Switch to docopt-parser
v2.0.0-alpha1
v2.0.0-alpha1
Changes since v1.0.0:
- github actions: Add docopt-lib.sh release job
- Update list of bash versions to test with
- Don't test in python < 3.11 any longer
- Add test to ensure multibyte chars work with the usage substring
- Leave $DOCOPT_PREFIX/$p unquoted and add shellcheck ignores
- minify: Split up single-quoted strings over multiple lines
- Improve code comments
- Reduce parser size by reusing one varnames array
- Reduce parser size by concatenating eval statements
- Use merge_identical_nodes to reduce parser size
- Remove need for $left array
- Add abstract documentation for how it all works
- Save entire options meta to a single array
- Fix minifying issue with single quoted strings
- Reduce parser size by ~30 lines
- Shorter varname for $prefix ($p)
- Considerably improve minification of the bash library
- Add inline documentation to the bash parsing library
- Switch to docopt-parser
v1.0.0-upkg
Add upkg.json so docopt-lib can be installed as a upkg dependency
v1.0.0-bpkg
Add bpkg.json so docopt-lib can be installed as a bpkg dependency
v1.0.0
v1.0.0 release!
A small change from v0.9.17 is the addition of another
"shellcheck disable=". Otherwise it is identical.
v0.9.17 has been stable and no bugs have been found over
prolonged use, so that's as good a reason as any to
declare the API stable and signal a proper release