Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update hypothesis to 3.30.0 #57

Merged
merged 2 commits into from
Sep 20, 2017
Merged

Conversation

pyup-bot
Copy link
Collaborator

There's a new version of hypothesis available.
You are currently using 3.28.2. I have updated it to 3.30.0

These links might come in handy: PyPI | Changelog | Repo

Changelog

3.30.0


This release introduces two new features:

  • pytest users can specify a seed to use for given based tests by passing
    the --hypothesis-seed command line argument.
  • When a test fails, either with a health check failure or a falsifying example,
    Hypothesis will print out a seed that led to that failure, if the test is not
    already running with a fixed seed. You can then recreate that failure using either
    the seed decorator or (if you are running pytest) with --hypothesis-seed.

This work was funded by Smarkets <https://smarkets.com/>_.


3.29.0


This release makes Hypothesis coverage aware. Hypothesis now runs all test
bodies under coverage, and uses this information to guide its testing.

The :attr:~hypothesis.settings.use_coverage setting can be used to disable
this behaviour if you want to test code that is sensitive to coverage being
enabled (either because of performance or interaction with the trace function).

The main benefits of this feature are:

  • Hypothesis now observes when examples it discovers cover particular lines
    or branches and stores them in the database for later.
  • Hypothesis will make some use of this information to guide its exploration of
    the search space and improve the examples it finds (this is currently used
    only very lightly and will likely improve significantly in future releases).

This also has the following side-effects:

  • Hypothesis now has an install time dependency on the coverage package.
  • Tests that are already running Hypothesis under coverage will likely get
    faster.
  • Tests that are not running under coverage now run their test bodies under
    coverage by default.

This feature is only partially supported under pypy. It is significantly slower
than on CPython and is turned off by default as a result, but it should still
work correctly if you want to use it.


3.28.3


This release is an internal change that affects how Hypothesis handles
calculating certain properties of strategies.

The primary effect of this is that it fixes a bug where use of
:func:~hypothesis.deferred could sometimes trigger an internal assertion
error. However the fix for this bug involved some moderately deep changes to
how Hypothesis handles certain constructs so you may notice some additional
knock-on effects.

In particular the way Hypothesis handles drawing data from strategies that
cannot generate any values has changed to bail out sooner than it previously
did. This may speed up certain tests, but it is unlikely to make much of a
difference in practice for tests that were not already failing with
Unsatisfiable.


Got merge conflicts? Close this PR and delete the branch. I'll create a new PR for you.

Happy merging! 🤖

@ericmjl ericmjl merged commit bfb1bda into master Sep 20, 2017
@ericmjl ericmjl deleted the pyup-update-hypothesis-3.28.2-to-3.30.0 branch September 20, 2017 00:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants