Skip to content

Releases: bats-core/bats-core

v1.13.0

07 Nov 16:12
v1.13.0
3bca150

Choose a tag to compare

Added

  • use the syntax parser directive to declare the Dockerfile syntax version (#1127)
  • Negative test filtering via --negative-filter - tests matching the filter are excluded (#1114)
  • fail-fast flag --abort to stop test suite execution on first failure (#1155)

Fixed:

  • unset output, stderr, lines, stderr_lines at the start of run to avoid crosstalk
    between successive invocations (#1105)
  • junit:
    • XML escape fully removes ANSI sequences, e.g. color codes, cursor movements (#1103)
    • fix retried tests being listed multiple times (#1150)
    • fix crash when setup_suite fails (#1125)
  • remove deprecated windows runner (#1119)
  • renamed docker-compose.yml to compose.yaml (#1128)
  • bats_test_function: don't require --tags to be sorted (#1158)
  • fix BATS_TEST_TIMEOUT (#1160)
    • not stopping processes under run
    • prolonging skipped tests

Documentation:

  • moved 3rd-party libraries list into wiki (#1078)

v1.12.0

18 May 21:07
v1.12.0
713504b

Choose a tag to compare

Added :

  • bats::on_failure hook that gets called when a test or setup* function fails (#1031)

Fixed:

  • increase compatibility with Solaris (#1043)
  • fix noclobber breaking bats-gather-tests (#1042)
  • fix exiting with 0 despite bats:focus when all tests have been filtered out (#1058)
  • remove deprecated ubuntu 20.04 from CI config (#1083)

Documentation:

  • Fix hyperlink to external Bash resource (#1033)
  • Remove mentions to no longer existing find_library_load_path in
    lib/bats-core docstrings (#1032)
  • Add missing "status" word in --returned-status documentation (#1077)

v1.11.1

29 Nov 22:33
v1.11.1
b640ec3

Choose a tag to compare

Added:

  • make Dockerfile compatible with #!/bin/bash files (#967)

Documentation

  • document bats_pipe function (#901)

Fixed:

  • unbreak test suites with multiple files loading common constants (#904), introduced in v1.11.0
  • docker image won't crash if a file or directory named 'bats' exists (#920)
  • use $BATS_LIBDIR instead of hardcoded lib in 'bats-gather-tests' (#985, #990)

Changed:

  • update Docker image with the latest bats-detik version 1.3.2 (#1017)
  • cleanup: remove unused $BATS_FILTER (#907)

Documentation

  • fix hard-coded link to readthedocs (#901)
  • fix tutorial code for multiline test suite (#1011)

v1.11.0

24 Mar 15:05
v1.11.0
5da6687

Choose a tag to compare

Added:

  • hardened CI scripts by using hashes instead of versions for actions and restricting permissions (#754, #770)
  • add security.md (#762)
  • add codespell CI checks (#720)
  • dynamic test registration via bats_test_function (#349)
  • add check that Bats is executed with Bash >= 3.2 (#873)

Fixed:

  • install.sh now works for deviating lib/ dirs (like lib32,lib64) (#487)
  • catch unset BATS_TEST_SOURCE in lib/bats-core/tracing.bash so
    set -u/set -o nounset works as expected (#827)
  • fix --gather-test-outputs-in fails on tests with multiple / (#789)
  • install does not create unused /usr/share/bats anymore (#857)
  • ensure IFS is unchanged in {setup,teardown}{_suite,_file,}, @test and free code (#879)
  • junit formatter: remove ANSI Codes to avoid invalid XML character (#886)

Changed:

  • update Docker image with the latest bats-file version 0.4.0 (#780)
  • update Docker image with the latest bats-detik version 1.3.0 (#876)

Documentation

  • clarify docker usage (#741)
  • update Arch Linux package URL in installation.rst (#821)
  • rename bash-bats to bats for Arch Linux in installation.rst (#836)
  • fix FAQ entry about setup-/teardown_suite, as they are available now (#861)
  • added logo (#881)

v1.11.0-RC2

21 Feb 12:49
7531b57

Choose a tag to compare

v1.11.0-RC2 Pre-release
Pre-release

Fixes compared to RC1:

  • static tests are now interleaved with dynamic tests in the order they were declared in the file (#860)
  • setting PATH in free code does not break bats-gather-tests anymore (#858)

Please report problems in the associated discussion page.

v1.11.0-RC1

27 Jan 19:01
990d8e2

Choose a tag to compare

v1.11.0-RC1 Pre-release
Pre-release

Due to the extensive changes necessary for the dynamic test registration, this is first released as a candidate for users to check if it works as intended.

Added

  • hardened CI scripts by using hashes instead of versions for actions and restricting permissions (#754, #770)
  • add security.md (#762)
  • add codespell CI checks (#720)
  • dynamic test registration via bats_test_function (#349)

Fixed

  • install.sh now works for deviating lib/ dirs (like lib32,lib64) (#487)
  • catch unset BATS_TEST_SOURCE in lib/bats-core/tracing.bash so
    set -u/set -o nounset works as expected (#827)
  • fix --gather-test-outputs-in fails on tests with multiple / (#789)

Changed

  • update Docker image with the latest bats-file version 0.4.0 (#780)
  • update Docker image with the latest bats-detik version 1.2.1 (#810)

Documentation

  • clarify docker usage (#741)
  • update Arch Linux package URL in installation.rst (#821)
  • rename bash-bats to bats for Arch Linux in installation.rst (#836)

v1.10.0

15 Jul 22:03
v1.10.0
f7defb9

Choose a tag to compare

Added:

  • add ${BATS_TEST_TAGS[@]} for querying the tags during a test (#705)
  • print tags on failing tests (#705)
  • test for negative arguments to --jobs (#693)
  • add tests for --formatter cat (#710)
  • test coverage in CI (#718)
  • Support for rush as alternative to GNU parallel (#729)
  • add bats_pipe helper function for run that executes \| as pipes (#663)
  • publish docker images to ghcr.io (additionally to Dockerhub) (#740)

Documentation:

  • clarify use cases of --formatter cat (#710)

Fixed:

  • fix run with options overwriting the value of i (#726, #727)
  • fix ${BATS_TEST_NAMES[@]} containing only --tags instead of test name since Bats v1.8.0 (#705)
  • fix run --keep-empty-lines counting trailing \n as (empty) new line (#711)
  • fix short flag unpacker creating bogus command lines with valued flags (#732)
  • fix formatter becoming confused with retries (#734)
  • fix --gather-test-outputs-in fails on tests with / (#735)
  • fix overriding date breaks --timing (#736)

Documentation

  • typos, minor edits (#704)
  • simplified contributing.md (#718)

v1.9.0

12 Feb 12:36
v1.9.0
6636e2c

Choose a tag to compare

Added:

  • add installation instructions for Debian, Fedora, Gentoo, and OpenSUSE (#659)
  • add --line-reference-format to switch file/line references in stack traces (#665)
    • comma_line (default): file.bats, line 1
    • colon: file.bats:1
    • uri: file:///path/to/file.bats:1
    • custom: define your own formatter in bats_format_file_line_reference_custom
  • add bats:focus tag to run only focused tests (#679)
  • add bats-support, bats-assert, bats-file and bats-detik to Dockerfile (#674)

Documentation:

  • add --help text and man page content for --filter-tags (#679)

Fixed:

  • explicitly check for GNU parallel (#691)
  • wait for report-formatter to finish before ending bats' execution,
    to fix empty files with --report-fomatter junit under Docker (#692)

Documentation

  • improved clarity of section about output in free code (#671)
  • fixed typos (#673)
  • clarify use cases of run (#366)

v1.8.2

19 Oct 21:38
v1.8.2
e8c840b

Choose a tag to compare

Bats 1.8.2

Released: 2022-10-19

Fixed:

  • fix non zero return code on successful retried tests (#670)

v1.8.1

19 Oct 20:32
v1.8.1
27807ae

Choose a tag to compare

Bats 1.8.1

Released: 2022-10-19

Fixed:

  • shfmt all files and enforce via CI (#651)
  • avoid kernel warning flood/hang with CTRL+C on Bash 5.2 RC (#656)
  • Fix infinite wait with (invalid) -j<n> (without space) (#657)