Here's is a combined todo/done list. You can see what todos are planned for the upcoming release, as well as ideas that may/may not make into a release in Ideas
.
Unplanned.
- Better style guide checking (#84)
Released: TBA. Diff.
- [ ]
Released: 2023-08-29 Diff.
- Upgrade and cleanup node dependencies
- Remove lanyon-based website in favor of simple redirect to github for bash3boilerplate.sh
- Make tests pass again
- Make linting and style checking separate actions
- Add feature to edit/update comments in ini file (#132, @rfuehrer)
- Upgrade to
lanyon@0.1.16
- Capture correct error_code in err_report (#124, @eval)
- Enhanced ini file handling: create new file, create new sections, handle default section, read key from given section (@rfuehrer)
Released: 2019-11-07. Diff.
- Upgrade to
lanyon@0.1.16
- Capture correct error_code in err_report (#124, @eval)
- Enhanced ini file handling: create new file, create new sections, handle default section, read key from given section (@rfuehrer)
Released: 2019-11-07. Diff.
- Upgrade to
lanyon@0.1.7
- Allow counting how many times an argument is used (@genesiscloud)
- Fix typos in megamount (thanks @gsaponaro)
- Enable color in screen or tmux (#92, @gmasse)
- Change
egrep
togrep -E
in test and lib scripts to comply with ShellCheck (#92, @gmasse) - Fix typo in FAQ (#92, @gmasse)
- Fix Travis CI failure on src/templater.sh (@gmasse)
- Add magic variable which contains full command invocation
- More contrasted alert and emergency colors (#111 @gmeral)
- Add support for repeatable arguments (@genesiscloud)
- Fix remaining warnings with shellcheck v0.7.0 (#107, @genesiscloud)
Released: 2016-12-21. Diff.
- Upgrade to
lanyon@0.0.143
Released: 2016-12-21. Diff.
- Add magic variable
__i_am_main_script
to distinguish if b3bp is being sourced or called directly (#45, @zbeekman) - Add style checks for tab characters and trailing whitespace (@zbeekman)
- Add backtracing to help localize errors (#44, @zbeekman)
- Additional FAQ entries (#47, suggested by @gdevenyi, implemented by @zbeekman)
- Ensure that shifting over
--
doesn't throw an errexit error (#21, @zbeekman) - Add Pull Request template (#83)
Released: 2016-12-21. Diff.
- README and FAQ improvements (#66, @mstreuhofer)
- Add support for sourcing b3bp (#61, @mstreuhofer)
- Upgrade all Node.js dependencies for development (#78)
- Switch to http://lanyon.io for static site building, add a new logo
- Cleanup environment variables (#58, @mstreuhofer)
- Support multi-line logs (#57, @mstreuhofer)
- Run shellcheck as part of the acceptance test (#79, @mstreuhofer)
- Brace all variables, used
[[
instead of[
(#33, #76, @mstreuhofer) - Add automatic usage validation for required args (#22, #65, @mstreuhofer)
- Remove all usage of eval (@mstreuhofer)
- Get rid of awk, sed & egrep usage (#71, @mstreuhofer)
- Fix auto-color-off code (#69, #70, @mstreuhofer)
- Use shellcheck to find and fix unclean code (#68, #80, @mstreuhofer)
- Allow for multiline opt description in
__usage
(#7, @mstreuhofer) - Allow
__usage
and__helptext
to be defined before sourcingmain.sh
thus makeing b3bp behave like a library (@mstreuhofer) - Add the same License text to each script header (@mstreuhofer)
Released: 2016-11-08. Diff.
- Cleanup b3bp variables (adds prefixes across the board) (thanks @mstreuhofer)
- Add multi-line logging support (thanks @mstreuhofer)
- Mangle long-option names to allow dashes (thanks @zbeekman)
- Remove OS detection altogether (#38, thx @zbeekman)
- Offer the main template for download as http://bash3boilerplate.sh/main.sh
- Better OS detection (#38, thx @moviuro)
- Improve README copy (#34, thx galaktos)
- Fix unquoted variable access within (#34 thx galaktos)
- For delete-key-friendliness, bundle the commandline definition block along with its parser
- Less verbose header comments
- For delete-key-friendliness, don't crash on undeclared help vars
- Introduce
errtrace
, which is on by default (BREAKING) - Add a configurable
helptext
that is left alone by the parses and allows you to have a richer help - Add a simple documentation website
- Add best practice of using
__double_underscore_prefixed_vars
to indicate global variables that are solely controlled inside your script - Make license more permissive by not requiring distribution of the LICENSE file if the copyright & attribution comments are left intact
- Respect
--no-color
by setting theNO_COLOR
flag inmain.sh
(#25, thx @gdevenyi) - Split out changelog into separate file
- Added a FAQ (#15, #14, thanks @rouson)
- Fix Travis OSX testing (before, it would silently pass failures) (#10)
- Enable dashes in long, GNU style options, as well as numbers (thanks @zbeekman)
Released: 2016-02-17. Diff.
- Add tests for
templater
and follow Library export best practices - Add tests for
ini_val
and follow Library export best practices - Add tests for
parse_url
and follow Library export best practices - Add tests for
megamount
and follow Library export best practices - Remove
bump
fromsrc
(BREAKING) - Remove
semver
fromsrc
(BREAKING)
Released: 2016-02-17. Diff.
- Add Travis CI automated testing for OSX (thanks @zbeekman)
Released: 2016-02-16. Diff.
- Allow disabling colors via
NO_COLOR
environment variable - Enable
errexit
,nounset
andpipefail
options at the top of the script already - More refined colors (thanks @arathai)
- Add a changelog to the README
- Add
__os
magic var (limited to discovering OSX and defaulting to Linux for now) - Add
__base
magic var (main
, if the source script ismain.sh
) - Enable long, GNU style options (thanks @zbeekman)
- Add Travis CI automated testing for Linux
Released: 2015-06-29. Diff.
- Add
ALLOW_REMAINDERS
configuration to templater - Fix typo: 'debugmdoe' to 'debugmode' (thanks @jokajak)
- Use
${BASH_SOURCE[0]}
for__file
instead of${0}
Released: 2014-11-02. Diff.
- Add
ini_val
,megamount
,parse_url
- Add re-usable libraries in
./src
- Use npm as an additional distribution channel