Skip to content

Releases: mboworks/bashtest

0.6.1

Choose a tag to compare

@github-actions github-actions released this 28 Aug 18:58
0.6.1
655ad0a

Version 0.6.1

Changelog

  • Transferred the canonical repository from helly25/bashtest to
    mboworks/bashtest; future releases use the new mboworks_bashtest module
    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

Choose a tag to compare

@github-actions github-actions released this 16 Aug 20:53
0.6.0
2f2aa78

Version 0.6.0

Changelog

  • Added skip_test "${REASON}": marks the current test as skipped and reports the reason. Use
    skip_test "reason" && return to end the test body.
  • Added --no-skip, which turns every skip_test into 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 EXIT trap'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 under set -u and still reporting PASS, hiding the seven that never
    ran.
  • Fixed: expect_contains / expect_not_contains aborted the shell when given an EMPTY array.
    bash 3.2 (which macOS ships) treats "${@}" and "${array[@]}" as unbound under set -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

Choose a tag to compare

@github-actions github-actions released this 02 Jul 22:28
0.5.0
7a084a6

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 under set -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, or pcregrep) via a here-string and fail with an actionable message when none is available.
  • Documented the cmd | grep -q SIGPIPE-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

Choose a tag to compare

@github-actions github-actions released this 26 Jun 18:01
0.4.0
937385c

Version 0.4.0

Changelog

  • Renamed the module repo to helly25_bashtest and dropped the com_helly25_bashtest alias. The bashtest macro now resolves its runtime via a repo-relative Label, so it works regardless of the apparent repo name. Consumers must update load("@helly25_bashtest//bashtest:bashtest.bzl", "bashtest") (previously @com_helly25_bashtest).
  • Dropped legacy WORKSPACE support; 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

Choose a tag to compare

@github-actions github-actions released this 14 Jun 16:54
0.3.1
494f3d4

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 done gate 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

Choose a tag to compare

@github-actions github-actions released this 07 Jun 20:40
0.3.0
7fec4a8

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

Full Changelog: 0.2.0...0.3.0

0.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Apr 11:48
a6d2f19

Version 0.2.0

Changelog

  • Added convenient target to print bashtest help bazel run //bashtest:bashtest_help which 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

Choose a tag to compare

@github-actions github-actions released this 27 Mar 20:10
88da1d0

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