Releases: mboworks/bashtest
Releases · mboworks/bashtest
Release list
0.6.1
Version 0.6.1
Changelog
- Transferred the canonical repository from
helly25/bashtestto
mboworks/bashtest; future releases use the newmboworks_bashtestmodule
name. - Added managed per-fixture scratch directories through
test_tmpdir, with
configurable retention and cleanup.
For Bazel MODULE.bazel
bazel_dep(name = "mboworks_bashtest", version = "0.6.1")
What's Changed
- Bump version from 0.6.0 to 0.6.1 by @helly25 in #26
- Add managed per-fixture scratch directories by @helly25 in #27
- Transfer bashtest module to MBO Works by @helly25 in #28
- Set package-ecosystem to 'bazel' in dependabot config by @helly25 in #30
- Migrate copyright and BCR ownership to MBO Works by @helly25 in #29
Full Changelog: 0.6.0...0.6.1
0.6.0
Version 0.6.0
Changelog
- Added
skip_test "${REASON}": marks the current test as skipped and reports the reason. Use
skip_test "reason" && returnto end the test body. - Added
--no-skip, which turns everyskip_testinto a failure. For an environment that
GUARANTEES the capability a test probes for, where a skip means the guarantee broke. - Fixed: a fatal abort inside a test no longer reports success. The
EXITtrap's own last command
became the script's exit status, so a failing run could exit 0. This repository's own test suite
was dying at case 5 of 12 underset -uand still reporting PASS, hiding the seven that never
ran. - Fixed:
expect_contains/expect_not_containsaborted the shell when given an EMPTY array.
bash 3.2 (which macOS ships) treats"${@}"and"${array[@]}"as unbound underset -u.
For Bazel MODULE.bazel
bazel_dep(name = "helly25_bashtest", version = "0.6.0")
What's Changed
- Bump version from 0.5.0 to 0.5.1 by @helly25 in #24
- Add skip_test and --no-skip; fix a suite that reported green while dying by @helly25 in #25
Full Changelog: 0.5.0...0.6.0
0.5.0
Version 0.5.0
Changelog
- Added text-matching assertions:
expect_output_contains/expect_output_not_contains: literal substring checks.expect_matches/expect_not_matches: extended regular expression (ERE) checks via bash's built-in[[ =~ ]](no subprocess, so SIGPIPE-safe underset -o pipefail).^/$anchor the whole text, not individual lines.expect_pcre_matches/expect_pcre_not_matches: Perl Compatible Regular Expression checks. These shell out to an external tool (grep -P,ggrep -P,pcre2grep, orpcregrep) via a here-string and fail with an actionable message when none is available.
- Documented the
cmd | grep -qSIGPIPE-under-pipefail pitfall in the README.
For Bazel MODULE.bazel
bazel_dep(name = "helly25_bashtest", version = "0.5.0")
What's Changed
- Bump version from 0.4.0 to 0.4.1 by @helly25 in #22
- feat: add text-matching assertions (expect_matches, expect_output_contains, expect_pcre_matches); bump to 0.5.0 by @helly25 in #23
Full Changelog: 0.4.0...0.5.0
0.4.0
Version 0.4.0
Changelog
- Renamed the module repo to
helly25_bashtestand dropped thecom_helly25_bashtestalias. Thebashtestmacro now resolves its runtime via a repo-relativeLabel, so it works regardless of the apparent repo name. Consumers must updateload("@helly25_bashtest//bashtest:bashtest.bzl", "bashtest")(previously@com_helly25_bashtest). - Dropped legacy
WORKSPACEsupport; the module is now bzlmod-only. - Extended the BCR presubmit support matrix: added Bazel 9.x and the Linux platforms ubuntu 22.04, Debian 12, and Rocky Linux 8 (alongside the existing ubuntu 24.04 and macOS).
For Bazel MODULE.bazel
bazel_dep(name = "helly25_bashtest", version = "0.4.0")
What's Changed
- Extend BCR support matrix (Bazel 9.x + more Linux); 0.3.2 by @helly25 in #19
- ci(bcr): test on macos_arm64 instead of Intel macos by @helly25 in #20
- feat!: drop com_helly25_bashtest alias and WORKSPACE support; bzlmod-only (0.4.0) by @helly25 in #21
Full Changelog: 0.3.1...0.4.0
0.3.1
Version 0.3.1
Changelog
For Bazel MODULES.bazel
bazel_dep(name = "helly25_bashtest", version = "0.3.1")What's Changed
- Bump version to 0.3.1 and add subcommands/--dry-run to trigger_release.sh by @helly25 in #14
- ci: upgrade
donegate to self-check + 1-line aggregation by @helly25 in #15 - chore: bump to 0.3.1 and auto-publish releases to the BCR by @helly25 in #16
- ci: fix BCR publish job startup_failure (drop job-level permissions) by @helly25 in #17
- ci: fix BCR publish permission cascade (startup_failure) by @helly25 in #18
Full Changelog: 0.3.0...0.3.1
0.3.0
Version 0.3.0
Changelog
- Added explicit load of
sh_library(needed for bazel 9). - Upgraded dependencies: bazel 9.1.1, bazel_skylib 1.8.2, platforms 1.0.0, rules_shell 0.6.1.
For Bazel MODULES.bazel
bazel_dep(name = "helly25_bashtest", version = "0.3.0")For Bazel WORKSPACE
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "com_helly25_bashtest",
url = "https://github.com/helly25/bashtest/releases/download/0.3.0/bashtest-0.3.0.tar.gz",
sha256 = "44d3b6e3c268e5b9ae6dc98b5d7c3a27b5846a825c1c7b3a0438ffe5ba31026c",
strip_prefix = "bashtest-0.3.0",
)Initializing the required modules
The project depends on some additional external repositories that can be added
manually of by calling the support functions in the user' WORKSPACE file:
load("@com_helly25_bashtest//bzl/workspace:load_modules.bzl", "helly25_bashtest_load_modules")
helly25_bashtest_load_modules()
load("@com_helly25_bashtest//bzl/workspace:init_modules.bzl", "helly25_bashtest_init_modules")
helly25_bashtest_init_modules()What's Changed
- Bump version from 0.2.0 to 0.2.1 by @helly25 in #11
- Documentation update. by @helly25 in #12
- Upgrade to Bazel 9.1.1 by @helly25 in #13
Full Changelog: 0.2.0...0.3.0
0.2.0
Version 0.2.0
Changelog
- Added convenient target to print
bashtesthelpbazel run //bashtest:bashtest_helpwhich can be used with|pandoc -s -t man|man -l -. - Fixed description for flag '--test_filter'.
- Added '--gtest_filter' which is an actual glob based filter (as opposed to '--test_filter' which uses posix regular expressions).
- Correct support for space separated flag values.
For Bazel MODULES.bazel
bazel_dep(name = "helly25_bashtest", version = "0.2.0")For Bazel WORKSPACE
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "com_helly25_bashtest",
url = "https://github.com/helly25/bashtest/releases/download/0.2.0/bashtest-0.2.0.tar.gz",
sha256 = "666d58320cb7e429fa21c774b3f308776280c1b1cae1f28694df4598a698bcb1",
strip_prefix = "bashtest-0.2.0",
)Initializing the required modules
The project depends on some additional external repositories that can be added
manually of by calling the support functions in the user' WORKSPACE file:
load("@com_helly25_bashtest//bzl/workspace:load_modules.bzl", "helly25_bashtest_load_modules")
helly25_bashtest_load_modules()
load("@com_helly25_bashtest//bzl/workspace:init_modules.bzl", "helly25_bashtest_init_modules")
helly25_bashtest_init_modules()What's Changed
- Bump version from 0.1.0 to 0.1.1 by @helly25 in #8
- Added convenient target to print bashtest help by @helly25 in #9
- Bump version due to new feature. by @helly25 in #10
Full Changelog: 0.1.0...0.2.0
0.1.0
Version 0.1.0
Changelog
- Initial version moved from helly25_mbo//testing/bashtest*
For Bazel MODULES.bazel
bazel_dep(name = "helly25_bashtest", version = "0.1.0")For Bazel WORKSPACE
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "com_helly25_bashtest",
url = "https://github.com/helly25/bashtest/releases/download/0.1.0/bashtest-0.1.0.tar.gz",
sha256 = "3f0314c2dbc6f780c02543c6355d07f98cd9935e54a07ec4477e3301434517d6",
strip_prefix = "bashtest-0.1.0",
)Initializing the required modules
The project depends on some additional external repositories that can be added
manually of by calling the support functions in the user' WORKSPACE file:
load("@com_helly25_bashtest//bzl/workspace:load_modules.bzl", "helly25_bashtest_load_modules")
helly25_bashtest_load_modules()
load("@com_helly25_bashtest//bzl/workspace:init_modules.bzl", "helly25_bashtest_init_modules")
helly25_bashtest_init_modules()What's Changed
- Initial version moved from helly25_mbo/mbo/testing/bashtest.sh
Full Changelog: https://github.com/helly25/bashtest/commits/0.1.0