Skip to content

6.0.0

Compare
Choose a tag to compare
@eldipa eldipa released this 16 Jul 13:18
· 1049 commits to master since this release

Changes from previous version:
Fixes

  • Made deterministic the output of the captured texts shown when the
    example fails.
  • Parse the examples after removing duplicated/overlapping ones. This
    prevents that a malformed example that would be removed later gets
    parsed before making the whole process to fail.
  • Remove the word TIMEOUT from the help, this was the name of the
    option a long time ago.
  • Fix the traceback printed when the example crashes.
  • Fix ExampleHarvest's name.

Enhancements

  • Added a rm option to define a set of chars that should be removed
    from the expected and the got strings. See 6050a88 for a small example.
  • Detect when a Ruby example expects the representation of
    the value of the executed expression (=>). If detected, capture the
    representation and check it as usual; if not, ignore it. This free the
    user from adding ; at the end of each line or using "+pass" hacks. This
    change in theory should be backward compatible and can be changed via
    +ruby-expr-print by setting it to true (always check), false
    never check or auto (auto detect, the default).
  • Two hooks (end_example, finally_example); allow got modification from
    concern.
  • Created a 'meta' attribute in the example, a mutable dictionary.
    Under the key 'got' it should be the got string that can be changed from
    the end_example and finally_example hooks.
  • Enable the redefinition of the command line to spawn a given
    runner/interpreter using the option shebang. This was enabled by all
    the runner/interpreted supported by byexample. See 6e3abae or
    docs/usage.md.
  • The timeout option now accepts a fraction of seconds.
  • Tagged each module with a stability tag: fine tuned the versioning.
    See 5f3d049 and README.md.

Incompatible changes (examples)

  • Enable by default pp (pretty print) for ruby exprs' outputs. This can
    be disabled from the command line with the option ruby-pretty-print
  • Use .. as the second prompt for the Ruby examples. This make
    the life easier when the examples are multilines. See 9784f38 for more
    details.

Incompatible changes (lib)

  • The shebang option required a non backward compatibility change
    of the internal class PexepctMixin.
  • The shebang option also is "not" compatible with Python 2.6.
  • We are dropping the support for Python 2.6 (for the execution of
    byexample itself, not the runner/interpreter of examples in
    Python)