Better test output (human-readable duration, --failures-only, --no-color), multiple standalone assertions, and release automation. Breaking: --preserve-env renamed to --skip-env-file.
✨ Improvements
- Display execution time in minutes format when tests run over 60 seconds (e.g., "2m 1s")
- Display individual test duration in human-readable format (ms, s, or m s) instead of always milliseconds
- Add
--failures-onlyflag to suppress passed/skipped/incomplete tests and show only failures - Add
--no-colorflag to disable ANSI color output (also supportsNO_COLORenv var per no-color.org standard) - Add multiple assertions support in standalone mode:
bashunit assert "cmd" exit_code "1" contains "error" - Add
release.shscript to automate the release process with dry-run support
🛠️ Changes
- BREAKING: Rename
--preserve-envflag to--skip-env-filefor clearer semantics - BREAKING: Rename
BASHUNIT_PRESERVE_ENVenvironment variable toBASHUNIT_SKIP_ENV_FILE - Improve documentation for
--skip-env-fileclarifying that shell functions are not inherited - Add tip to Bootstrap documentation promoting it as the solution for function availability in tests
- Clarify that exit code assertions check $? instead of executing commands
🐛 Bug Fixes
- Internal flaky tests when running
--strict - Visible stdout/stderr during normal execution
set_up_before_scriptandtear_down_after_script
👥 Contributors
🔐 Checksum
1cdb44f844f8decf9943c2b8e18679b4497e3bd798ce4aa9605cfde3d357706f bin/bashunit
Full Changelog: 0.29.0...0.30.0