./devel/py-hypothesis, Python library for property based testing

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 3.86.5, Package name: py27-hypothesis-3.86.5, Maintainer: pkgsrc-users

Hypothesis is a library for testing your Python code against a much
larger range of examples than you would ever want to write by hand.
It's based on the Haskell library, Quickcheck, and is designed to
integrate seamlessly into your existing Python unit testing work

Hypothesis is both extremely practical and also advances the state
of the art of unit testing by some way. It's easy to use, stable,
and extremely powerful. If you're not using Hypothesis to test your
project then you're missing out.

Required to run:
[devel/py-setuptools] [databases/py-sqlite3] [devel/py-coverage] [lang/python27] [devel/py-enum34] [devel/py-attrs]

Required to build:

Master sites:

SHA1: 1fefde5cfb04e190dd13c2fff3c7a6f8702d7ef1
RMD160: 55c71ef364065419de8339b695a22cc1600e6fdc
Filesize: 182.068 KB

Version history: (Expand)

CVS history: (Expand)

   2019-01-07 09:31:28 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-hypothesis: updated to 3.86.5

This is a docs-only patch, which fixes some typos and removes a few hyperlinks \ 
for deprecated features.

This release changes the order in which the shrinker tries to delete data. For \ 
large and slow tests this may significantly improve the performance of \ 

This release fixes a bug where certain places Hypothesis internal errors could \ 
be raised during shrinking when a user exception occurred that suppressed an \ 
exception Hypothesis uses internally in its generation.

The two known ways to trigger this problem were:

Errors raised in stateful tests’ teardown function.
Errors raised in finally blocks that wrapped a call to data.draw.
These cases will now be handled correctly.

This patch is a docs-only change to fix a broken hyperlink.

This patch fixes issue 1732, where integers() would always return long values on \ 
Python 2.

This release ensures that infinite numbers are never generated by floats() with \ 
allow_infinity=False, which could previously happen in some cases where one \ 
bound was also provided.

The trivially inconsistent min_value=inf, allow_infinity=False now raises an \ 
InvalidArgumentError, as does the inverse with max_value. You can still use \ 
just(inf) to generate inf without violating other constraints.
   2018-12-13 08:11:49 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: updated to 3.83.1

This patch increases the variety of examples generated by st.from_type(type).

Our pytest plugin now warns you when strategy functions have been collected as \ 
tests, which may happen when e.g. using the :func:@composite \ 
<hypothesis.strategies.composite> decorator when you should be using \ 
@given(st.data()) for inline draws. Such functions always pass when treated as \ 
tests, because the lazy creation of strategies mean that the function body is \ 
never actually executed!

Hypothesis can now :ref:show statistics <statistics> when running under \ 
:pypi:pytest-xdist. Previously, statistics were only reported when all tests \ 
were run in a single process (:issue:700).

This patch fixes :issue:1667, where passing bounds of Numpy dtype int64 to \ 
:func:~hypothesis.strategies.integers could cause errors on Python 3 due to \ 
internal rounding.

Hypothesis now seeds and resets the global state of :class:np.random \ 
<numpy:numpy.random.RandomState> for each test case, to ensure that tests \ 
are reproducible.

This matches and complements the existing handling of the :mod:python:random \ 
module - Numpy simply maintains an independent PRNG for performance reasons.

This is a no-op release to add the new Framework :: Hypothesis trove classifier \ 
to :pypi:hypothesis on PyPI.

You can use it as a filter to find Hypothesis-related packages such as \ 
extensions as they add the tag over the coming weeks, or simply visit :doc:our \ 
curated list <strategies>.

The :ref:Hypothesis for Pandas extension <hypothesis-pandas> is now listed \ 
in setup.py, so you can pip install hypothesis[pandas]. Thanks to jmshi for this \ 
   2018-11-05 09:35:04 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: updated to 3.82.1

This patch fixes :func:~hypothesis.strategies.from_type on Python 2 for classes \ 
where cls.__init__ is object.__init__.

The alphabet argument for :func:~hypothesis.strategies.text now uses its default \ 
value of characters(blacklist_categories=('Cs',)) directly, instead of hiding \ 
that behind alphabet=None and replacing it within the function. Passing None is \ 
therefore deprecated.
   2018-10-29 09:21:57 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: updated to 3.81.0

:class:~hypothesis.stateful.GenericStateMachine and \ 
:class:~hypothesis.stateful.RuleBasedStateMachine now raise an explicit error \ 
when instances of :obj:~hypothesis.settings are assigned to the classes' \ 
settings attribute, which is a no-op (:issue:1643). Instead assign to \ 
SomeStateMachine.TestCase.settings, or use @settings(...) as a class decorator \ 
to handle this automatically.
   2018-10-26 10:05:31 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: updated to 3.80.0

Since :ref:version 3.68.0 <v3.68.0>, :func:~hypothesis.extra.numpy.arrays \ 
checks that values drawn from the elements and fill strategies can be safely \ 
cast to the dtype of the array, and emits a warning otherwise.

This release expands the checks to cover overflow for finite complex64 elements \ 
and string truncation caused by too-long elements or trailing null characters \ 

Tests using :func:@given <hypothesis.given> now shrink errors raised from \ 
:pypi:pytest helper functions, instead of reporting the first example found.

This was previously fixed in :ref:version 3.56.0 <v3.56.0>, but only for \ 
stateful testing.

Traceback elision is now disabled on Python 2, to avoid an import-time \ 
:class:python:SyntaxError under Python < 2.7.9 (Python: :bpo:21591, \ 
:ref:Hypothesis 3.79.2 <v3.79.2>: :issue:1648).

We encourage all users to upgrade to Python 3 before the end of 2019.

This patch shortens tracebacks from Hypothesis, so you can see exactly happened \ 
in your code without having to skip over irrelevant details about our internals \ 

In the example test (see :pull:1582), this reduces tracebacks from nine frames \ 
to just three - and for a test with multiple errors, from seven frames per error \ 
to just one!

If you do want to see the internal details, you can disable frame elision by \ 
setting :obj:~hypothesis.settings.verbosity to debug.

The abstract number classes :class:~python:numbers.Number, \ 
:class:~python:numbers.Complex, :class:~python:numbers.Real, \ 
:class:~python:numbers.Rational, and :class:~python:numbers.Integral are now \ 
supported by the :func:~hypothesis.strategies.from_type strategy. Previously, \ 
you would have to use :func:~hypothesis.strategies.register_type_strategy before \ 
they could be resolved (:issue:1636)

This release adds a CLI flag for verbosity --hypothesis-verbosity to the \ 
Hypothesis pytest plugin, applied after loading the profile specified by \ 
--hypothesis-profile. Valid options are the names of verbosity settings, quiet, \ 
normal, verbose or debug.

The pytest header now correctly reports the current profile if \ 
--hypothesis-profile has been used.
   2018-10-18 12:07:18 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: updated to 3.78.0

This release has deprecated the generation of integers, floats and fractions \ 
when the conversion of the upper and/ or lower bound is not 100% exact, e.g. \ 
when an integer gets passed a bound that is not a whole number. (:issue:1625)

This minor release adds functionality to :obj:~hypothesis.settings allowing it \ 
to be used as a decorator on :obj:~hypothesis.stateful.RuleBasedStateMachine and \ 

This patch fixes some warnings added by recent releases of :pypi:pydocstyle and \ 
   2018-10-12 13:49:59 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: updated to 3.76.0

This release deprecates using floats for min_size and max_size.
The type hint for average_size arguments has been changed from Optional[int] to \ 
None, because non-None values are always ignored and deprecated.

This patch adds more internal comments to the core engine's sequence-length \ 
shrinker. There should be no user-visible change.

This patch adds additional comments to some of the core engine's internal data \ 
structures. There is no user-visible change.

This patch avoids caching a trivial case, fixing :issue:493.

This patch fixes a broken link in a docstring.

This release deprecates the use of min_size=None, setting the default min_size \ 
to 0 (:issue: 1618).

This patch makes some small internal changes to comply with a new lint setting \ 
in the build. There should be no user-visible change.

This patch fixes :issue:1153, where time spent reifying a strategy was also \ 
counted in the time spent generating the first example. Strategies are now fully \ 
constructed and validated before the timer is started.

This patch fixes some broken formatting and links in the documentation.
   2018-10-03 11:56:53 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-hypothesis: updated to 3.74.0

This release checks that the value of the :attr:~hypothesis.settings.print_blob \ 
setting is a :class:~hypothesis.PrintSettings instance.

Being able to specify a boolean value was not intended, and is now deprecated. \ 
In addition, specifying True will now cause the blob to always be printed, \ 
instead of causing it to be suppressed.

Specifying any value that is not a :class:~hypothesis.PrintSettings or a boolean \ 
is now an error.

Changes the documentation for hypothesis.strategies.datetimes, \ 
hypothesis.strategies.dates, hypothesis.strategies.times to use the new \ 
parameter names min_value and max_value instead of the deprecated names

This patch ensures that Hypothesis deprecation warnings display the code that \ 
emitted them when you're not running in -Werror mode (:issue:652).

Tracebacks involving :func:@composite <hypothesis.strategies.composite> \ 
are now slightly shorter due to some internal refactoring.

This patch fixes errors in the internal comments for one of the shrinker passes. \ 
There is no user-visible change.

This patch substantially improves the distribution of data generated with \ 
:func:~hypothesis.strategies.recursive, and fixes a rare internal error \ 

This release adds the :func:~hypothesis.extra.dpcontracts.fulfill function, \ 
which is designed for testing code that uses :pypi:dpcontracts 0.4 or later for \ 
input validation. This provides some syntactic sugar around use of \ 
:func:~hypothesis.assume, to automatically filter out and retry calls that cause \ 
a precondition check to fail (:issue:1474).

This release makes setting attributes of the :class:hypothesis.settings class an \ 
explicit error. This has never had any effect, but could mislead users who \ 
confused it with the current settings instance hypothesis.settings.default \ 
(which is also immutable). You can change the global settings with :ref:settings \ 
profiles <settings_profiles>.

This patch factors out some common code in the shrinker for iterating over pairs \ 
of data blocks. There should be no user-visible change.