Changelog of @hackage/shelltestrunner 1.10

1.10 (2023-09-12)

User-visible changes:

  • GHC 9.6 compatibility (Andreas Abel)
  • Add --print for printing tests and/or converting file format (#24, Jakob Schöttl)
  • Print test line number on failure (#14, Taavi Väljaots)
  • Add --shell option to select shell (#17, FC Stegerman)
  • Fix format1's handling of angle brackets in test data (#16)
  • Add -p short flag for --precise
  • -h means --help, not --hide-successes
  • Clarify 300 char regex limit message

Other:

  • Set up CI testing (#18 FC Stegerman, Simon Michael)
  • Improve bash-related tests (#20, FC Stegerman, Simon Michael)
  • Improved tests

1.9 (2018/1/14)

  • two new test file formats have been added, allowing input re-use and lighter syntax
  • new -l/--list flag lists the tests found
  • new -D/--defmacro option allows text substitution (Taavi Valjaots)
  • new --xmlout option saves test results as xml (Taavi Valjaots)
  • tests with Windows line endings now also work on unix (Taavi Valjaots)
  • shelltestrunner's tests should now pass on Windows (Taavi Valjaots)
  • flags formerly passed through to test-framework are now built in
  • = with nothing after it now matches any exit status

  • failure messages now show the test command (John Chee)
  • include shelltestrunner's tests in cabal sdist archive (Iustin Pop)
  • build with latest deps and stackage resolvers
  • process dep update (Andrés Sicard-Ramírez)
  • shelltestrunner's code and home page have moved to github

1.3.5 (2015/3/30)

  • fix Applicative warning with ghc 7.10
  • allow utf8-string <1.1

1.3.4 (2014/5/28)

  • drop cabal-file-th, support GHC 7.8.2

1.3.3 (2014/5/25)

  • allow process 1.2, regex-tdfa-1.2
  • add a hackage-compatible changelog

1.3.2 (2013/11/13)

  • increase upper bound on Diff package

1.3.1 (2012/12/28)

  • fix cabal file typo breaking the build

1.3 (2012/12/28)

  • support latest Diff, cmdargs, test-framework; tested with GHC 7.6.1 (Magnus Therning)

  • fix unicode handling on GHC >= 7.2

1.2.1 (2012/3/12)

  • use the more up-to-date filemanip package for easier Debian packaging

1.2 (2012/2/26)

  • support latest cmdargs, test-framework, and GHC 7.4
  • more readable non-quoted failure output by default; for quoted output, use -p/--precise
  • the --all, --diff and --precise options now interact well

1.1 (2011/8/25)

  • bump process dependency to allow building with GHC 7.2.1
  • new -a/--all flag shows all failure output without truncating

1.0 (2011/7/23)

  • New home page/docs
  • The >>>= field is now required; you may need to add it to your existing tests
  • Input and expected output can now contain lines beginning with #
  • Multiple tests in a file may now have whitespace between them
  • The -i/--implicit option has been dropped
  • New -d/--diff option shows test failures as a unified diff when possible, including line numbers to help locate the problem
  • New -x/--exclude option skips certain test files (eg platform-specific ones)
  • Passing arguments through to test-framework is now more robust
  • Fixed: parsing could fail when input contained left angle brackets
  • Fixed: some test files generated an extra blank test at the end

0.9 (2010/9/3)

  • show plain non-ansi output by default, add --color option
  • better handling of non-ascii test data. We assume that non-ascii file paths, command-line arguments etc. are UTF-8 encoded on unix systems (cf http://www.dwheeler.com/essays/fixing-unix-linux-filenames.html), and that GHC 6.12 or greater is used. Then:
    • non-ascii test file paths should render correctly, eg in failure messages
    • non-ascii test commands should run correctly
    • non-ascii expected output should match correctly
    • non-ascii regular expressions should match correctly. (Caveat: not thoroughly tested, this may break certain regexps, )
  • use regex-tdfa instead of pcre-light for better windows compatibility To avoid a memory leak in current regex-tdfa, only regular expressions up to 300 characters in size are supported. Also, DOTALL is no longer enabled and probably fewer regexp constructs are supported. There are still issues on windows/wine but in theory this will help.
  • tighten up dependencies

0.8 (2010/4/9)

  • rename executable to shelltest. The package might also be renamed at some point.
  • better built-in help
  • shell tests now include a full command line, making them more readable and self-contained. The --with option can be used to replace the first word with something else, unless the test command line begins with a space.
  • we also accept directory arguments, searching for test files below them, with two new options: --execdir execute tested command in same directory as test file --extension=EXT file extension of test files (default=.test)

0.7 (2010/3/5)

  • more robust parsing
    • --debug-parse parses test files and stops
    • regexps now support escaped forward slash (/)
    • bad regexps now fail at startup
    • command-line arguments are required in a test, and may be blank
    • a >>>= is no longer required to separate multiple tests in a file
    • comments can be appended to delimiter lines
    • comments can appear at end of file
    • files need not have a final newline
    • files containing nothing, all comments, or valid tests are allowed; anything else is rejected
    • somewhat better errors
    • allow indented input
  • support negative (-) and negatively-matched (!) numeric exit codes
  • let . in regexps match newline
  • warn but continue when a test file fails to parse
  • output cleanups, trim large output
  • more flexible --implicit flag
  • switch to the more robust and faster pcre-light regexp lib

0.6 (2009/7/15)

  • allow multiple tests per file, handle bad executable better

0.5 (2009/7/14)

  • show failure output in proper order

0.4 (2009/7/14)

  • run commands in a more robust way to avoid hangs This fixes hanging when a command generates large output, and hopefully all other deadlocks. The output is consumed strictly. Thanks to Ganesh Sittampalam for his help with this.
  • --implicit-tests flag providing implicit tests for omitted fields
  • --debug flag
  • regular expression matching
  • disallow interspersed foreign options which confused parseargs
  • change comment character to #

0.3 (2009/7/11)

  • misc. bugfixes/improvements

0.2 (2009/7/10)

  • bugfix, build with -threaded

0.1 (2009/7/10)

  • shelltestrunner, a generic shell command stdout/stderr/exit status tester