This release refactors stateful rule selection to share the new machinery with :func:`~hypothesis.strategies.sampled_from` instead of using the original independent implementation.
4.17.1
Not secure
-------------------
This patch allows Hypothesis to try a few more examples after finding the first bug, in hopes of reporting multiple distinct bugs. The heuristics described in :issue:`847` ensure that we avoid wasting time on fruitless searches, while still surfacing each bug as soon as possible.
4.17.0
Not secure
-------------------
This release adds the strategy :func:`~hypothesis.extra.numpy.broadcastable_shapes`, which generates array shapes that are `broadcast-compatible <https://www.pythonlikeyoumeanit.com/Module3_IntroducingNumpy/Broadcasting.html#Rules-of-Broadcasting>`_ with a provided shape.
4.16.0
Not secure
-------------------
This release allows :func:`~hypothesis.strategies.register_type_strategy` to be used with :obj:`python:typing.NewType` instances. This may be useful to e.g. provide only positive integers for :func:`from_type(UserId) <hypothesis.strategies.from_type>` with a ``UserId = NewType('UserId', int)`` type.
Thanks to PJCampi for suggesting and writing the patch!
4.15.0
Not secure
-------------------
This release supports passing a :class:`~python:datetime.timedelta` as the :obj:`~hypothesis.settings.deadline` setting, so you no longer have to remember that the number is in milliseconds (:issue:`1900`).
Thanks to Damon Francisco for this change!
4.14.7
Not secure
-------------------
This patch makes the type annotations on ``hypothesis.extra.dateutil`` compatible with :pypi:`mypy` 0.700.