pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/py-hypothesis py-hypothesis: updated to 4.44.2

branches:  trunk
changeset: 343962:e5fab52a6f35
user:      adam <>
date:      Wed Nov 13 21:08:30 2019 +0000

py-hypothesis: updated to 4.44.2

This release fixes :func:`@given <hypothesis.given>` to only complain about missing keyword-only arguments if the associated test function is actually called.

This matches the behaviour of other InvalidArgument errors produced by @given.

This patch allows Hypothesis to run in environments that do not specify a __file__, such as a :mod:`python:zipapp` (:issue:`2196`).

This release adds a gufunc argument to :func:`~hypothesis.extra.numpy.mutually_broadcastable_shapes` (:issue:`2174`), which allows us to generate shapes which are valid for functions like 
:obj:`numpy:numpy.matmul` that require shapes which are not simply broadcastable.

This patch fixes :issue:`2108`, where the first test using :func:`` to draw from :func:`~hypothesis.strategies.characters` or :func:`~hypothesis.strategies.text` would be 
flaky due to unreliable test timings.

Time taken by lazy instantiation of strategies is now counted towards drawing from the strategy, rather than towards the deadline for the test function.

This release ensures that the strategies passed to :func:`@given <hypothesis.given>` are properly validated when applied to a test method inside a test class.

This should result in clearer error messages when some of those strategies are invalid.

This release changes how Hypothesis manages its search space in cases where it generates redundant data. This should cause it to generate significantly fewer duplicated examples (especially with 
short integer ranges), and may cause it to produce more useful examples in some cases (especially ones where there is a significant amount of filtering).

This patch refactors width handling in :func:`~hypothesis.strategies.floats`; you may notice small performance improvements but the main purpose is to enable work on :issue:`1704` (improving 
shrinking of bounded floats).

This patch removes an unused internal flag. There is no user-visible change.

This patch corrects the exception type and error message you get if you attempt to use :func:`` to draw from something which is not a strategy. This never worked, but the 
error is more helpful now.

We've adopted :pypi:`flake8-bugbear` to check for a few more style issues, and this patch implements the minor internal cleanups it suggested. There is no user-visible change.

This patch fixes the formatting of some documentation, but there is no change to any executed code.

Python 3.8's new :obj:`python:typing.Literal` type - see PEP 586 for details - is now supported in :func:`~hypothesis.strategies.from_type`.

This release adds the strategy :func:`~hypothesis.extra.numpy.mutually_broadcastable_shapes`, which generates multiple array shapes that are mutually broadcast-compatible with an optional 
user-specified base-shape.

This is a generalisation of :func:`~hypothesis.extra.numpy.broadcastable_shapes`. It relies heavily on non-public internals for performance when generating and shrinking examples. We intend to 
support generating shapes matching a ufunc signature in a future version (:issue:`2174`).

This release fixes :func:`~hypothesis.strategies.from_type` when used with bounded or constrained :obj:`python:typing.TypeVar` objects (:issue:`2094`).
Previously, distinct typevars with the same constraints would be treated as all single typevar, and in cases where a typevar bound was resolved to a union of subclasses this could result in mixed 
types being generated for that typevar.

This patch ensures that the default value :func:`~hypothesis.extra.numpy.broadcastable_shapes` chooses for max_dims is always valid (at most 32), even if you pass min_dims=32.

This patch ensures that we only add profile information to the pytest header if running either pytest or Hypothesis in verbose mode, matching the builtin cache plugin (:issue:`2155`).

This patch makes stateful step printing expand the result of a step into multiple variables when you return :func:`~hypothesis.stateful.multiple` (:issue:`2139`).

This release fixes a bug (:issue:`2166`) where a Unicode character info cache file was generated but never used on subsequent test runs, causing tests to run more slowly than they should have.

This patch corrects some internal documentation. There is no user-visible change.

This release fixes a bug (:issue:`2160`) where decorators applied after :func:`@settings <hypothesis.settings>` and before :func:`@given <hypothesis.given>` were ignored.

This release updates Hypothesis's formatting to the new version of :pypi:`black`, and has absolutely no user visible effect.

This release fixes a bug in :func:`~hypothesis.strategies.recursive` which would have meant that in practice max_leaves was treated as if it was lower than it actually is - specifically it would be 
capped at the largest power of two smaller than it. It is now handled correctly.

Python 3.8's new :class:`python:typing.SupportsIndex` type - see PEP 357 for details - is now supported in :func:`~hypothesis.strategies.from_type`.

This release significantly simplifies Hypothesis's internal logic for data generation, by removing a number of heuristics of questionable or unproven value.

The results of this change will vary significantly from test to test. Most test suites will see significantly faster data generation and lower memory usage. The "quality" of the generated data may go 
up or down depending on your particular test suites.

If you see any significant regressions in Hypothesis's ability to find bugs in your code as a result of this release, please file an issue to let us know.

Users of the new :ref:`targeted property-based testing <targeted-search>` functionality are reasonably likely to see improvements in data generation, as this release changes the search algorithm for 
targeted property based testing to one that is more likely to be productive than the existing approach.


 devel/py-hypothesis/Makefile |   4 ++--
 devel/py-hypothesis/PLIST    |   5 ++++-
 devel/py-hypothesis/distinfo |  10 +++++-----
 3 files changed, 11 insertions(+), 8 deletions(-)

diffs (46 lines):

diff -r 0fec1ea3dd8a -r e5fab52a6f35 devel/py-hypothesis/Makefile
--- a/devel/py-hypothesis/Makefile      Wed Nov 13 21:02:15 2019 +0000
+++ b/devel/py-hypothesis/Makefile      Wed Nov 13 21:08:30 2019 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.80 2019/10/22 13:20:27 adam Exp $
+# $NetBSD: Makefile,v 1.81 2019/11/13 21:08:30 adam Exp $
-DISTNAME=      hypothesis-4.41.3
+DISTNAME=      hypothesis-4.44.2
 CATEGORIES=    devel python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=h/hypothesis/}
diff -r 0fec1ea3dd8a -r e5fab52a6f35 devel/py-hypothesis/PLIST
--- a/devel/py-hypothesis/PLIST Wed Nov 13 21:02:15 2019 +0000
+++ b/devel/py-hypothesis/PLIST Wed Nov 13 21:08:30 2019 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.27 2019/08/22 11:05:27 adam Exp $
+@comment $NetBSD: PLIST,v 1.28 2019/11/13 21:08:30 adam Exp $
@@ -108,6 +108,9 @@
diff -r 0fec1ea3dd8a -r e5fab52a6f35 devel/py-hypothesis/distinfo
--- a/devel/py-hypothesis/distinfo      Wed Nov 13 21:02:15 2019 +0000
+++ b/devel/py-hypothesis/distinfo      Wed Nov 13 21:08:30 2019 +0000
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.77 2019/10/22 13:20:27 adam Exp $
+$NetBSD: distinfo,v 1.78 2019/11/13 21:08:30 adam Exp $
-SHA1 (hypothesis-4.41.3.tar.gz) = 54a535d9cc9d84e9f675dbb22a54254cd3e7b604
-RMD160 (hypothesis-4.41.3.tar.gz) = 03c8be341bfcb751ca2d3d070cb7e119d88a473d
-SHA512 (hypothesis-4.41.3.tar.gz) = 8b7541f24f270dbb755238bc40314aa76e9d57a7d7d7c340182f15b66823fc0fc1f54d9ad67e33bc5e6ebe06fb44bfefaa0a4521823cefb9fc3ce3b7fcce909c
-Size (hypothesis-4.41.3.tar.gz) = 214921 bytes
+SHA1 (hypothesis-4.44.2.tar.gz) = 91d4344fe2274298396186705d6bd8432535e203
+RMD160 (hypothesis-4.44.2.tar.gz) = 1f79de1c4ba25c9bc24d1a8d66296d268f98b04c
+SHA512 (hypothesis-4.44.2.tar.gz) = 69986ba9f36be0e22ca9528e80b841a99ce4d2a0113cf5061b99d0cc25d7db6d8abf493f78fb14e385df8150b2188966ee1c26028ed6d82694676e33014a349c
+Size (hypothesis-4.44.2.tar.gz) = 220872 bytes

Home | Main Index | Thread Index | Old Index