NEWS for cmdtest ================ This file summarizes changes between releases of cmdtest. Version 0.32+git, not yet released ---------------------------------- * Undo HTML escaping of code blocks done by the Python Markdown parser. Version 0.32, released 2018-02-24 ---------------------------------- * No changes. Want a new release to trigger an upload to Debian. Version 0.31, released 2017-04-30 ---------------------------------- * Add yarnutil.Variables methods: save, append, get. Version 0.30, released 2017-04-16 ---------------------------------- * Fix check for whether Python is used a shell. Previously the shell had to be exactly "python", not anything that contains that is enough. This is necessary to trigger PYTHONPATH manipulation when using python2 explicitly. Version 0.29, released 2017-04-11 ---------------------------------- * Add assertions and getting the next parameter match to `yarnutils`. Version 0.28, released 2017-03-28 ---------------------------------- * Output from `--timings` is now properly formatted, rather than it all being on one line. Daniel Silverstone reported the bug. * Add a new Python package `yarnutils` that can be imported into IMPLEMENTS written in Python to simplify things. This version provided persistent variables. Version 0.27, released 2016-09-21 ---------------------------------- * Debian packaging now provides the name `yarn` in addition to `cmdtest`. * Fixed bug in writing out error messages that are not ASCII. Version 0.26, released 2016-07-23 ---------------------------------- * Debian packaging fix to correct section. Thanks, Ben Finney. Version 0.25, released 2016-07-18 ---------------------------------- * Fixed yarn manual page examples to say `DATADIR` instead of `TESTDIR`. Thanks to John Kozak for reporting it. Version 0.24, released 2016-04-18 ---------------------------------- * Fixed missing import. Version 0.23, released 2016-04-18 --------------------------------- * Yarn now has the `--stop-on-first-fail` setting, which makes it stop if a scenario step fails, and not continue with the next scenario. * Yarn now adds SRCDIR to PYTHONPATH, if `--shell=python` is used. Version 0.22, released 2016-02-04 --------------------------------- * Explicitly encode Unicode strings to the preferred locale encoding when writing to stdout, stderr. Version 0.21, released 2016-01-25 --------------------------------- * Fixed another non-ASCII problem in yarns. Also found by Heikki Haapala. This time, environment variable values must be encoded (we do UTF-8). Version 0.20, released 2016-01-25 --------------------------------- * Allow scenario and step names to have non-ASCII text. Thanks to Heikki Haapala for reporting the problem. Version 0.19, released 2016-01-09 --------------------------------- * Yarn now gives an error if `--run` is given a scenario that doens't exist. * Yarn now supports `--shell` to choose the shell to execute IMPLEMENTS scripts, and `--shell-arg` to add arguments to shell. This can be used to use Python instead of sh: `--shell=/usr/bin/python2 --shell-arg=''`. * Yarn now supports the `--cd-datadir` setting to have each step run in `DATADIR` instead of `SRCDIR`. The default remains `SRCDIR`, but at some point in the future, the default will probably change. Version 0.18, released 2015-11-06 --------------------------------- * Code blocks that are examples are now supported. * Snapshot directories are now created only when `--snapshot` is used. Version 0.17, released 2015-09-21 --------------------------------- * Yarn now flushes outputs (stdout, stderr) whenever it writes anything. This should avoid some problems with programs that capture yarn output, such as CI systems, and get the timings differently from what would happen on a terminal. * The `--require-assumptions` option has been added to tell Yarn to treat failing ASSUMPTIONS steps as errors. Version 0.16, released 2015-06-30 --------------------------------- * Flush terminal status output whenever a new scenario or step is started. This ensures the terminal isn't showing an earlier, very fast step, when the actual current step is slow. Version 0.15, released 2015-06-29 --------------------------------- * Steps are indented when yarn is run in `--verbose` mode. * Failed scenarios are listed at the end of yarn output. Version 0.14, released 2015-03-05 --------------------------------- * Yarn now supports continuation lines: start a line with `...` and it continues the previous line. * Yarn now works with UTF-8 input. No other character sets are supported; sorry (but patches welcome). Version 0.12, released 2014-03-28 --------------------------------- For yarn: * Do not fail a test suite if snapshotting `DATADIR` fails. Version 0.11, released 2014-03-15 --------------------------------- For yarn: * Report number of scenarios skipped due to an ASSUMING step failing. * Fix the error message for reporting scenarios without THEN steps to include the names of those scenarios only, rather than all scenarios. Patch by Pete Fotheringham. * Yarn now sets `$HOME` to a directory in `$DATADIR`, and creates that directory. This means test suites can assume `$HOME` exists, but don't use the user's real home directory, which is important for test environment hygiene. * New option `--allow-missing-steps` to allow running a test suite with some steps missing. The scenarios with missing steps will be skipped. Suggested by Pete Fotheringham. For cmdtest: * The `--test` (`-t`) option should now work again. Thank you to Kalle Valo for prodding me. Version 0.10, released 2013-10-05 --------------------------------- * Yarn now cleans the environment when it runs shell commands for the implementation steps. The PATH variable is kept from the user's environment, every other variable is either removed or hardcoded to a specific value. More variables can be added explicitly to the test environment with the new `--env NAME=VALUE` option. Additionally yarn sets the `SRCDIR` environment variable to point at the root of the source tree (the directory where yarn was invoked from). * A new option, `--timings`, has been added to yarn to report how long each scenario and each step took. * Yarn now reports scenarios skipped because of ASSUMING failing. * Yarn manual page now documents DATADIR and SRCDIR environment variables. Bug fixes: * Yarn now complains if a scenario has no THEN steps. Suggested by Richard Maw. * Yarn now gives an error if there are no scenarios. Suggested by Daniel Silverstone and others. * Yarn now checks for duplicate scenario names. * Yarn now always checks for IMPLEMENTS sections with case-insensitive matching. Reported, with test case, by Jannis Pohlmann. Version 0.9, released 2013-07-23 -------------------------------- * Yarn now warns if an input file has no code blocks. * There is no a yarn `--shell-library` option for the user to use, which includes a shell library when running any IMPLEMENTS section. * FINALLY always worked in yarn, but has now been added to the manual page as well. * The keyword ASSUMING has been added to yarn. * New yarn option `--run` allows running selected tests only. * New yarn option `--snapshot` makes snapshots of the test working directory after each step in a scenario. Combined with the, also new, option `--tempdir` this makes debugging failed tests easier. * New yarn option `--verbose` (turned on automatically if there is not tty available, e.g., when running from cron), turns off ttystatus progress bar and produces a "wall of text" style output instead. Bug fixes: * Yarn now handles multiple input files correctly. Reported by Daniel Silverstone; fix based on his patch, but rewritten. Version 0.8.3, released 2013-06-21 -------------------------------- * Bug fix: properly install yarnlib. In other news, I hate distutils. Version 0.8.2, released 2013-06-21 -------------------------------- * Bug fix: install the yarnlib library as well. This is embarrassing. Version 0.8.1, released 2013-06-20 -------------------------------- * Bug fix: install the yarn binary in the package. Version 0.8, released 2013-06-19 -------------------------------- * Switch terminology to "scenario testing" from "story testing". Thanks to Rob Kendrick for the suggestion. Doing a quick release so the old terminology doesn't have time to get any use. Version 0.7, released 2013-06-15 -------------------------------- * Added the new tool `yarn`, for doing story testing. It is still fresh and raw, but I want to make it available to get feedback. Version 0.6, released 2013-03-14 -------------------------------- * Fixed cmdtest to diff outputs correctly. Reported by Kevin Lee. Version 0.5, released 2012-09-29 -------------------------------- * Version 0.4 may or may not have released. If it was, it should have had internal changes only. * Add missing copy of GPLv3. Reported by Michel Alexandre Salim. Version 0.3, released 2012-02-24 -------------------------------- * Add `--keep` option to keep the temporary directory for failed tests. * Add `--timings` option to show timings for various tests. Good for when test suites start getting slow and you want to speed them up. Version 0.2, released 2012-02-18 -------------------------------- * The `-t testname` option now works.