Subject: CVS commit: pkgsrc/devel/py-hypothesis
From: Adam Ciarcinski
Date: 2019-04-02 11:40:30
Message id:

Log Message:
py-hypothesis: updated to 4.14.2

This patch improves the error message if the function f in :ref:s.flatmap(f) \ 
<flatmap> does not return a strategy.

This release modifies how Hypothesis selects operations to run during shrinking, \ 
by causing it to deprioritise previously useless classes of shrink until others \ 
have reached a fixed point.

This avoids certain pathological cases where the shrinker gets very close to \ 
finishing and then takes a very long time to finish the last small changes \ 
because it tries many useless shrinks for each useful one towards the end. It \ 
also should cause a more modest improvement (probably no more than about 30%) in \ 
shrinking performance for most tests.

This release blocks installation of Hypothesis on Python 3.4, which :PEP:reached \ 
its end of life date on 2019-03-18 <429>.

This should not be of interest to anyone but downstream maintainers - if you are \ 
affected, migrate to a secure version of Python as soon as possible or at least \ 
seek commercial support.

This release makes it an explicit error to call :func:floats(min_value=inf, \ 
exclude_min=True) <hypothesis.strategies.floats> or \ 
:func:floats(max_value=-inf, exclude_max=True) \ 
<hypothesis.strategies.floats>, as there are no possible values that can \ 
be generated (:issue:1859).

:func:floats(min_value=0.0, max_value=-0.0) <hypothesis.strategies.floats> \ 
is now deprecated. While 0. == -0. and we could thus generate either if \ 
comparing by value, violating the sequence ordering of floats is a special case \ 
we don't want or need.

This release should significantly reduce the amount of memory that Hypothesis \ 
uses for representing large test cases, by storing information in a more compact \ 
representation and only unpacking it lazily when it is first needed.

This update adds the :obj:~hypothesis.settings.report_multiple_bugs setting, \ 
which you can use to disable multi-bug reporting and only raise whichever bug \ 
had the smallest minimal example. This is occasionally useful when using a \ 
debugger or tools that annotate tracebacks via introspection.

This change makes a tiny improvement to the core engine's bookkeeping. There is \ 
no user-visible change.

This release changes some of Hypothesis's internal shrinking behaviour in order \ 
to reduce memory usage and hopefully improve performance.

This release adds a micro-optimisation to how Hypothesis handles debug reporting \ 
internally. Hard to shrink test may see a slight performance improvement, but in \ 
most common scenarios it is unlikely to be noticeable.

This release removes some redundant code that was no longer needed but was still \ 
running a significant amount of computation and allocation on the hot path. This \ 
should result in a modest speed improvement for most tests, especially those \ 
with large test cases.

This release adds a micro-optimisation to how Hypothesis caches test cases. This \ 
will cause a small improvement in speed and memory usage for large test cases, \ 
but in most common scenarios it is unlikely to be noticeable.

This release removes some internal code that populates a field that is no longer \ 
used anywhere. This should result in some modest performance and speed \ 
improvements and no other user visible effects.