The main reason I’ve gone dark for so long since late November has been John Omernik’s fault. He’s been enthusiastically integrating my go-script-bash framework into his own project, zetago, and giving me tons of great feedback and feature ideas.
Now several of those ideas, and many more, have landed in go-script-bash
v1.3.0. Yes, I
did quietly skip announcing bugfix releases v1.1.1 and v1.1.2, feature release
v1.2.0 that introduced stack traces, and v1.2.1 that enhanced their interface
and added them to @go.log FATAL output. Sorry about that. But now
in addition to stack traces and minor bug fixes, v1.3.0 has some major
updates:
- Lots of powerful
logmodule enhancements - Lots of robust test helpers and assertion testing tools in
lib/batsandlib/testing - An improved and expanded
formatmodule - New
file,strings, andsubcommandsmodules - A new
demo-corebuiltin anddemo-core logsubcommand for demonstrating module features - Many other loving details that try to make the right thing the easy thing
See the release notes linked above for more details. I’m shooting to release v1.4.0 by February 16, 2017. I’ll be tracking progress using v1.4.0 milestone GitHub issues and the v1.4.0 GitHub project.
It’s been a damn lot of hard work that no one’s asked for or paid me to do, but such is the curse of my artistic temperament. Whatever I can do to make the right things easier for myself—namely modular design, documentation, and of course thorough and effective automated testing—will hopefully make them easier for others one day. But I derive a tremendous amount of satisfaction from this work regardless.
Plus, as an extra kick, after years of removing excuses as to why people don’t test their code, I’ve now got 634 pieces of living proof that Bash scripts aren’t "too hard to test"—and counting!