3534 lines
160 KiB
Plaintext
3534 lines
160 KiB
Plaintext
|
-------------------------------------------------------------------
|
|||
|
Tue Aug 29 17:43:45 UTC 2023 - Ben Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to 6.82.7
|
|||
|
* This patch updates our autoformatting tools, improving our code
|
|||
|
style without any API changes.
|
|||
|
- Release 6.82.6
|
|||
|
* This patch enables and fixes many more of ruff‘s lint rules.
|
|||
|
- Release 6.82.5
|
|||
|
* Fixes the error message for missing [cli] extra.
|
|||
|
- Use slow 'obs' profile for testing and disable healthcheck
|
|||
|
tests because of it.
|
|||
|
|
|||
|
------------------------------------------------------------------
|
|||
|
Mon Aug 14 07:03:21 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|||
|
|
|||
|
- update to 6.82.4:
|
|||
|
* This patch ensures that we always close the download
|
|||
|
connection in :class:`~hypothesis.database.GitHubArtifactDatabase`.
|
|||
|
* We can now pretty-print combinations of *zero*
|
|||
|
:class:`enum.Flag` values, like ``SomeFlag(0)``,
|
|||
|
which has never worked before.
|
|||
|
* This patch fixes pretty-printing of combinations of
|
|||
|
:class:`enum.Flag` values, which was previously an error
|
|||
|
(:issue:`3709`).
|
|||
|
* Improve shrinking of floats in narrow regions that don't
|
|||
|
cross an integer boundary. Closes :issue:`3357`.
|
|||
|
* :func:`~hypothesis.strategies.from_regex` now supports the
|
|||
|
atomic grouping (``(?>...)``) and possessive quantifier
|
|||
|
(``*+``, ``++``, ``?+``, ``{m,n}+``) syntax `added in Python 3.11
|
|||
|
* If the :envvar:`HYPOTHESIS_NO_PLUGINS` environment variable
|
|||
|
is set, we'll avoid :ref:`loading plugins <entry-points>`
|
|||
|
such as `the old Pydantic integration
|
|||
|
* Fixes some lingering issues with inference of recursive types
|
|||
|
* in `~hypothesis.strategies.from_type`. Closes :issue:`3525`.
|
|||
|
* This release drops support for Python 3.7, `which reached end
|
|||
|
of life on 2023-06-27
|
|||
|
* Fixes occasional recursion-limit-exceeded errors when
|
|||
|
validating deeply nested strategies. Closes: :issue:`3671`
|
|||
|
* Improve the type rendered in
|
|||
|
:func:`~hypothesis.strategies.from_type`, which improves the
|
|||
|
coverage of Ghostwriter.
|
|||
|
* This patch improves Ghostwriter's use of qualified names for
|
|||
|
re-exported functions and classes, and avoids importing useless
|
|||
|
:obj:`~typing.TypeVar`\ s.
|
|||
|
* This patch updates our vendored `list of top-level domains
|
|||
|
will raise an error rather than hanging indefinitely if
|
|||
|
passed invalid ``max_leaves=`` arguments.
|
|||
|
* Warn in :func:`~hypothesis.strategies.from_type` if the
|
|||
|
inferred strategy has no variation (always returning default
|
|||
|
instances). Also handles numpy data types by calling
|
|||
|
:func:`~hypothesis.extra.numpy.from_dtype` on the
|
|||
|
corresponding dtype, thus ensuring proper variation for these
|
|||
|
types.
|
|||
|
* :func:`~hypothesis.strategies.from_type` now works in cases
|
|||
|
where we use :func:`~hypothesis.strategies.builds` to create
|
|||
|
an instance and the constructor has an argument which would lead
|
|||
|
to recursion. Previously, this would raise an error if the
|
|||
|
argument had a default value.
|
|||
|
* In preparation for supporting JAX in
|
|||
|
:ref:`hypothesis.extra.array_api <array-api>`,
|
|||
|
this release supports immutable arrays being generated via
|
|||
|
:func:`xps.arrays`.
|
|||
|
* and adds automatic support for writing
|
|||
|
``@hypothesis.example()`` or ``@example()``
|
|||
|
depending on the current style in your test file - defaulting
|
|||
|
to the latter.
|
|||
|
* This patch updates our linter stack to use :pypi:`ruff`, and
|
|||
|
fixes some previously-ignored lints.
|
|||
|
* Hypothesis will now record an event for more cases where data
|
|||
|
is marked invalid, including for exceeding the internal depth
|
|||
|
limit.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun May 14 15:30:18 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|||
|
|
|||
|
- update to 6.75.3:
|
|||
|
* This patch fixes ~hypothesis.strategies.complex_numbers accidentally
|
|||
|
invalidating itself when passed magnitude arguments for 32
|
|||
|
and 64-bit widths, i.e. 16- and 32-bit floats, due to not
|
|||
|
internally down-casting numbers
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed May 10 16:11:33 UTC 2023 - Daniel Garcia <daniel.garcia@suse.com>
|
|||
|
|
|||
|
- Update to 6.75.2:
|
|||
|
* Improved the documentation regarding how to use
|
|||
|
GitHubArtifactDatabase and fixed a bug that occurred in
|
|||
|
repositories with no existing artifacts.
|
|||
|
- 6.75.1
|
|||
|
* hypothesis.errors will now raise AttributeError when attempting to
|
|||
|
access an undefined attribute, rather than returning None.
|
|||
|
- 6.75.0
|
|||
|
* Sick of adding @example()s by hand? Our Pytest plugin now writes
|
|||
|
.patch files to insert them for you, making this workflow easier
|
|||
|
than ever before.
|
|||
|
|
|||
|
* Note that you’ll need LibCST (via hypothesis[codemods]), and that
|
|||
|
@example().via() requires PEP 614 (Python 3.9 or later).
|
|||
|
- 6.74.1
|
|||
|
* This patch provides better error messages for datetime- and
|
|||
|
timedelta-related invalid dtypes in our Pandas extra (issue
|
|||
|
#3518).
|
|||
|
- 6.74.0
|
|||
|
* This release adds support for nullable pandas dtypes in pandas()
|
|||
|
(issue #3604).
|
|||
|
- 6.73.1
|
|||
|
* This patch updates our minimum Numpy version to 1.16, and restores
|
|||
|
compatibility with versions before 1.20, which were broken by a
|
|||
|
mistake in Hypothesis 6.72.4 (issue #3625).
|
|||
|
- 6.73.0
|
|||
|
* This release upgrades the explain phase (issue #3411).
|
|||
|
- 6.72.4
|
|||
|
* This patch fixes type annotations for the arrays() strategy.
|
|||
|
- 6.72.3
|
|||
|
* This patch fixes a bug with from_type() with dict[tuple[int, int], str] (issue #3527).
|
|||
|
- 6.72.2
|
|||
|
* This patch refactors our internals to facilitate an upcoming feature.
|
|||
|
- 6.72.1
|
|||
|
* This patch fixes some documentation and prepares for future features.
|
|||
|
- 6.72.0
|
|||
|
* This release deprecates Healthcheck.all(), and adds a codemod to
|
|||
|
automatically replace it with list(Healthcheck) (issue #3596).
|
|||
|
- 6.71.0
|
|||
|
* This release adds GitHubArtifactDatabase, a new database backend
|
|||
|
that allows developers to access the examples found by a Github
|
|||
|
Actions CI job. This is particularly useful for workflows that
|
|||
|
involve continuous fuzzing, like HypoFuzz.
|
|||
|
- 6.70.2
|
|||
|
* This patch clarifies the reporting of time spent generating data.
|
|||
|
A simple arithmetic mean of the percentage of time spent can be
|
|||
|
misleading; reporting the actual time spent avoids
|
|||
|
misunderstandings.
|
|||
|
- 6.70.1
|
|||
|
* This patch updates our vendored list of top-level domains, which
|
|||
|
is used by the provisional domains() strategy.
|
|||
|
- 6.70.0
|
|||
|
* This release adds an optional domains= parameter to the emails()
|
|||
|
strategy, and excludes the special-use .arpa domain from the
|
|||
|
default strategy (issue #3567).
|
|||
|
- 6.69.0
|
|||
|
* This release turns HealthCheck.return_value and
|
|||
|
HealthCheck.not_a_test_method into unconditional errors. Passing
|
|||
|
them to suppress_health_check= is therefore a deprecated no-op.
|
|||
|
(issue #3568).
|
|||
|
* Separately, GraalPy can now run and pass most of the hypothesis
|
|||
|
test suite (issue #3587).
|
|||
|
- 6.68.3
|
|||
|
* This patch updates our vendored list of top-level domains, which
|
|||
|
is used by the provisional domains() strategy.
|
|||
|
- 6.68.2
|
|||
|
* This patch fixes missing imports of the re module, when
|
|||
|
ghostwriting tests which include compiled patterns or regex flags.
|
|||
|
Thanks to Jens Heinrich for reporting and promptly fixing this
|
|||
|
bug!
|
|||
|
- 6.68.1
|
|||
|
* This patch adds some private hooks for use in research on
|
|||
|
Schemathesis (see our preprint here).
|
|||
|
- 6.68.0
|
|||
|
* This release adds support for the Array API’s 2022.12 release via
|
|||
|
the api_version argument in make_strategies_namespace().
|
|||
|
Concretely this involves complex support in its existing
|
|||
|
strategies, plus an introduced xps.complex_dtypes() strategy.
|
|||
|
* Additionally this release now treats hypothesis.extra.array_api as
|
|||
|
stable, meaning breaking changes should only happen with major
|
|||
|
releases of Hypothesis.
|
|||
|
- 6.67.1
|
|||
|
* This patch updates our autoformatting tools, improving our code
|
|||
|
style without any API changes.
|
|||
|
- 6.67.0
|
|||
|
* This release allows for more precise generation of complex numbers
|
|||
|
using from_dtype(), by supporting the width, min_magnitude, and
|
|||
|
min_magnitude arguments (issue #3468).
|
|||
|
- 6.66.2
|
|||
|
* This patch fixes a rare RecursionError when pretty-printing a
|
|||
|
multi-line object without type-specific printer, which was passed
|
|||
|
to a function which returned the same object by .map() or
|
|||
|
builds() and thus recursed due to the new pretty reprs in
|
|||
|
Hypothesis 6.65.0 - 2023-01-24 (issue #3560). Apologies to all
|
|||
|
those affected.
|
|||
|
- 6.66.1
|
|||
|
* This makes from_dtype() pass through the parameter allow_subnormal
|
|||
|
for complex dtypes.
|
|||
|
- 6.66.0
|
|||
|
* This release adds a width parameter to complex_numbers(),
|
|||
|
analogously to floats().
|
|||
|
- 6.65.2
|
|||
|
* This patch fixes invalid annotations detected for the tests
|
|||
|
generated by Ghostwritter. It will now correctly generate Optional
|
|||
|
types with just one type argument and handle union expressions
|
|||
|
inside of type arguments correctly. Additionally, it now supports
|
|||
|
code with the from __future__ import annotations marker for Python
|
|||
|
3.10 and newer.
|
|||
|
- 6.65.1
|
|||
|
* This release improves the pretty-printing of enums in falsifying
|
|||
|
examples, so that they print as their full identifier rather than
|
|||
|
their repr.
|
|||
|
- 6.65.0
|
|||
|
* Hypothesis now reports some failing inputs by showing the call
|
|||
|
which constructed an object, rather than the repr of the object.
|
|||
|
This can be helpful when the default repr does not include all
|
|||
|
relevant details, and will unlock further improvements in a future
|
|||
|
version.
|
|||
|
* For now, we capture calls made via builds(), and via
|
|||
|
SearchStrategy.map().
|
|||
|
- 6.64.0
|
|||
|
* The Ghostwritter will now include type annotations on tests for
|
|||
|
type-annotated code. If you want to force this to happen (or not
|
|||
|
happen), pass a boolean to the new annotate= argument to the
|
|||
|
Python functions, or the --[no-]annotate CLI flag.
|
|||
|
- 6.63.0
|
|||
|
* range_indexes() now accepts a name= argument, to generate named
|
|||
|
pandas.RangeIndex objects.
|
|||
|
- 6.62.1
|
|||
|
* This patch tweaks xps.arrays() internals to improve PyTorch
|
|||
|
compatibility. Specifically, torch.full() does not accept integers
|
|||
|
as the shape argument (n.b. technically “size” in torch), but such
|
|||
|
behaviour is expected in internal code, so we copy the torch
|
|||
|
module and patch in a working full() function.
|
|||
|
- 6.62.0
|
|||
|
* A classic error when testing is to write a test function that can
|
|||
|
never fail, even on inputs that aren’t allowed or manually
|
|||
|
provided.
|
|||
|
- 6.61.3
|
|||
|
* This patch teaches our enhanced get_type_hints() function to ‘see
|
|||
|
through’ partial application, allowing inference from type hints
|
|||
|
to work in a few more cases which aren’t (yet!) supported by the
|
|||
|
standard-library version.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Apr 21 12:26:35 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|||
|
|
|||
|
- add sle15_python_module_pythons (jsc#PED-68)
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Apr 13 22:41:58 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Make calling of %{sle15modernpython} optional.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Feb 17 16:07:03 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Limit dependencies for tests on older distributions
|
|||
|
(particularly do not depend on Django, Pandas, and fakeredis
|
|||
|
and Redis).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Jan 7 21:27:40 UTC 2023 - Ben Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to 6.61.2
|
|||
|
* This patch improves our pretty-printing of failing examples,
|
|||
|
including some refactoring to prepare for exciting future
|
|||
|
features.
|
|||
|
- Release 6.61.1
|
|||
|
* This patch brings our domains() and emails() strategies into
|
|||
|
compliance with RFC 5890 §2.3.1: we no longer generate
|
|||
|
parts-of-domains where the third and fourth characters are --
|
|||
|
(“R-LDH labels”), though future versions may deliberately
|
|||
|
generate xn-- punycode labels. Thanks to python-email-validator
|
|||
|
for the report!
|
|||
|
- Update dependencies
|
|||
|
- Move to PEP517 build
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Dec 15 06:35:15 UTC 2022 - Daniel Garcia <daniel.garcia@suse.com>
|
|||
|
|
|||
|
- Update to 6.61.0
|
|||
|
|
|||
|
- This release improves our treatment of database keys, which based on (among
|
|||
|
other things) the source code of your test function. We now post-process
|
|||
|
this source to ignore decorators, comments, trailing whitespace, and blank
|
|||
|
lines - so that you can add :obj:`@example() <hypothesis.example>`\ s or
|
|||
|
make some small no-op edits to your code without preventing replay of any
|
|||
|
known failing or covering examples.
|
|||
|
|
|||
|
- 6.60.1 - 2022-12-11
|
|||
|
|
|||
|
- This patch updates our vendored `list of top-level domains
|
|||
|
<https://www.iana.org/domains/root/db>`__,
|
|||
|
which is used by the provisional :func:`~hypothesis.provisional.domains`
|
|||
|
strategy.
|
|||
|
|
|||
|
- 6.60.0 - 2022-12-04
|
|||
|
|
|||
|
- This release improves Hypothesis' ability to resolve forward references in
|
|||
|
type annotations. It fixes a bug that prevented
|
|||
|
:func:`~hypothesis.strategies.builds` from being used with `pydantic models
|
|||
|
that possess updated forward references
|
|||
|
<https://pydantic-docs.helpmanual.io/usage/postponed_annotations/>`__. See
|
|||
|
:issue:`3519`.
|
|||
|
|
|||
|
- 6.59.0 - 2022-12-02
|
|||
|
|
|||
|
- The :obj:`@example(...) <hypothesis.example>` decorator now has a ``.via()``
|
|||
|
method, which future tools will use to track automatically-added covering
|
|||
|
examples (:issue:`3506`).
|
|||
|
|
|||
|
- 6.58.2 - 2022-11-30
|
|||
|
|
|||
|
- This patch updates our vendored `list of top-level domains
|
|||
|
<https://www.iana.org/domains/root/db>`__, which is used by the provisional
|
|||
|
:func:`~hypothesis.provisional.domains` strategy.
|
|||
|
|
|||
|
- 6.58.1 - 2022-11-26
|
|||
|
|
|||
|
- This patch shifts ``hypothesis[lark]`` from depending on the old
|
|||
|
:pypi:`lark-parser` package to the new :pypi:`lark` package. There are no
|
|||
|
code changes in Hypothesis, it's just that Lark got a new name on PyPI for
|
|||
|
version 1.0 onwards.
|
|||
|
|
|||
|
- 6.58.0 - 2022-11-19
|
|||
|
|
|||
|
- :func:`~hypothesis.register_random` has used :mod:`weakref` since
|
|||
|
:ref:`v6.27.1`, allowing the :class:`~random.Random`-compatible objects to
|
|||
|
be garbage-collected when there are no other references remaining in order
|
|||
|
to avoid memory leaks. We now raise an error or emit a warning when this
|
|||
|
seems likely to happen immediately.
|
|||
|
|
|||
|
- The type annotation of :func:`~hypothesis.register_random` was also widened
|
|||
|
so that structural subtypes of :class:`~random.Random` are accepted by
|
|||
|
static typecheckers.
|
|||
|
|
|||
|
- 6.57.1 - 2022-11-14
|
|||
|
|
|||
|
- This patch updates some internal type annotations and fixes a formatting
|
|||
|
bug in the :obj:`~hypothesis.Phase.explain` phase reporting.
|
|||
|
|
|||
|
- 6.57.0 - 2022-11-14
|
|||
|
|
|||
|
- Hypothesis now raises an error if you passed a strategy as the
|
|||
|
``alphabet=`` argument to :func:`~hypothesis.strategies.text`, and it
|
|||
|
generated something which was not a length-one string. This has never been
|
|||
|
supported, we're just adding explicit validation to catch cases like `this
|
|||
|
StackOverflow question <https://stackoverflow.com/a/74336909/9297601>`__.
|
|||
|
|
|||
|
- 6.56.4 - 2022-10-28
|
|||
|
|
|||
|
- This patch updates some docs, and depends on :pypi:`exceptiongroup` 1.0.0
|
|||
|
final to avoid a bug in the previous version.
|
|||
|
|
|||
|
- 6.56.3 - 2022-10-17
|
|||
|
|
|||
|
- This patch teaches :func:`~hypothesis.strategies.text` to rewrite a few
|
|||
|
more filter predicates (:issue:`3134`). You're unlikely to notice any
|
|||
|
change.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Oct 16 17:44:52 UTC 2022 - Dirk Müller <dmueller@suse.com>
|
|||
|
|
|||
|
- update to 6.56.2:
|
|||
|
* This patch updates our vendored `list of top-level domains
|
|||
|
<https://www.iana.org/domains/root/db>`__, which is used by the provisional
|
|||
|
:func:`~hypothesis.provisional.domains` strategy, and fixes some incorrect
|
|||
|
examples in the docs for
|
|||
|
:func:`~hypothesis.extra.numpy.mutually_broadcastable_shapes`.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Oct 9 21:39:51 UTC 2022 - Ben Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to 6.56.1
|
|||
|
* This patch improves the error message when Hypothesis detects
|
|||
|
“flush to zero” mode for floating-point: we now report which
|
|||
|
package(s) enabled this, which can make debugging much easier.
|
|||
|
See issue #3458 for details.
|
|||
|
- Release 6.56.0
|
|||
|
* This release defines __bool__() on SearchStrategy. It always
|
|||
|
returns True, like before, but also emits a warning to help
|
|||
|
with cases where you intended to draw a value (issue #3463).
|
|||
|
- Release 6.55.0
|
|||
|
* In preparation for future versions of the Array API standard,
|
|||
|
make_strategies_namespace() now accepts an optional api_version
|
|||
|
argument, which determines the version conformed to by the
|
|||
|
returned strategies namespace. If None, the version of the
|
|||
|
passed array module xp is inferred.
|
|||
|
* This release also introduces xps.real_dtypes(). This is
|
|||
|
currently equivalent to the existing xps.numeric_dtypes()
|
|||
|
strategy, but exists because the latter is expected to include
|
|||
|
complex numbers in the next version of the standard.
|
|||
|
- Release 6.54.6
|
|||
|
* If multiple explicit examples (from @example()) raise a Skip
|
|||
|
exception, for consistency with generated examples we now
|
|||
|
re-raise the first instead of collecting them into an
|
|||
|
ExceptionGroup (issue #3453).
|
|||
|
- Release 6.54.5
|
|||
|
* This patch updates our autoformatting tools, improving our code
|
|||
|
style without any API changes.
|
|||
|
- Release 6.54.4
|
|||
|
* This patch fixes some type annotations for Python 3.9 and
|
|||
|
earlier (issue #3397), and teaches explain mode about certain
|
|||
|
locations it should not bother reporting (issue #3439).
|
|||
|
- Release 6.54.3
|
|||
|
* This patch teaches the Ghostwriter an additional check for
|
|||
|
function and class locations that should make it use public
|
|||
|
APIs more often.
|
|||
|
- Release 6.54.2
|
|||
|
* This patch fixes our workaround for a pytest bug where the
|
|||
|
inner exceptions in an ExceptionGroup are not displayed (issue
|
|||
|
#3430).
|
|||
|
- Release 6.54.1
|
|||
|
* This patch makes FailedHealthCheck and DeadlineExceeded
|
|||
|
exceptions picklable, for compatibility with Django’s parallel
|
|||
|
test runner (issue #3426).
|
|||
|
- Release 6.54.0
|
|||
|
* Reporting of multiple failing examples now uses the PEP 654
|
|||
|
ExceptionGroup type, which is provided by the exceptiongroup
|
|||
|
backport on Python 3.10 and earlier (issue #3175).
|
|||
|
hypothesis.errors.MultipleFailures is therefore deprecated.
|
|||
|
* Failing examples and other reports are now stored as PEP 678
|
|||
|
exception notes, which ensures that they will always appear
|
|||
|
together with the traceback and other information about their
|
|||
|
respective error.
|
|||
|
- Release 6.53.0
|
|||
|
* from_field() now supports UsernameField from
|
|||
|
django.contrib.auth.forms.
|
|||
|
* Thanks to Afonso Silva for reporting and working on issue
|
|||
|
#3417.
|
|||
|
- Release 6.52.4
|
|||
|
* This patch improves the error message when you pass filenames
|
|||
|
to the hypothesis write CLI, which takes the name of a module
|
|||
|
or function (e.g. hypothesis write gzip or hypothesis write
|
|||
|
package.some_function rather than hypothesis write script.py).
|
|||
|
* Thanks to Ed Rogers for implementing this as part of the SciPy
|
|||
|
2022 sprints!
|
|||
|
- Release 6.52.3
|
|||
|
* This patch ensures that the warning for non-interactive
|
|||
|
.example() points to your code instead of Hypothesis internals
|
|||
|
(issue #3403).
|
|||
|
* Thanks to @jameslamb for this fix.
|
|||
|
- Release 6.52.2
|
|||
|
* This patch makes integers() more likely to generate boundary
|
|||
|
values for large two-sided intervals (issue #2942).
|
|||
|
- Release 6.52.1
|
|||
|
* This patch adds filter rewriting for math.isfinite(),
|
|||
|
math.isinf(), and math.isnan() on integers() or floats() (issue
|
|||
|
#2701).
|
|||
|
* Thanks to Sam Clamons at the SciPy Sprints!
|
|||
|
- Release 6.52.0
|
|||
|
* This release adds the allow_subnormal argument to
|
|||
|
complex_numbers() by applying it to each of the real and
|
|||
|
imaginary parts separately. Closes issue #3390.
|
|||
|
* Thanks to Evan Tey for this fix.
|
|||
|
- Release 6.51.0
|
|||
|
* Issue a deprecation warning if a function decorated with
|
|||
|
@composite does not draw any values (issue #3384).
|
|||
|
* Thanks to Grzegorz Zieba, Rodrigo Girão, and Thomas Ball for
|
|||
|
working on this at the EuroPython sprints!
|
|||
|
- Release 6.50.1
|
|||
|
* This patch improves the error messages in @example() argument
|
|||
|
validation following the recent release of 6.49.1.
|
|||
|
- Release 6.50.0
|
|||
|
* This release allows from_dtype() to generate Unicode strings
|
|||
|
which cannot be encoded in UTF-8, but are valid in Numpy arrays
|
|||
|
(which use UTF-32).
|
|||
|
* This logic will only be used with Numpy >= 1.19, because
|
|||
|
earlier versions have an issue which led us to revert
|
|||
|
Hypothesis 5.2 last time!
|
|||
|
- Release 6.49.1
|
|||
|
* This patch fixes some inconsistency between argument handling
|
|||
|
for @example and @given (2706).
|
|||
|
- Release 6.49.0
|
|||
|
* This release uses PEP 612 typing.ParamSpec (or the
|
|||
|
typing_extensions backport) to express the
|
|||
|
first-argument-removing behaviour of @st.composite and
|
|||
|
signature-preservation of functions() to IDEs, editor plugins,
|
|||
|
and static type checkers such as mypy.
|
|||
|
- Release 6.48.3
|
|||
|
* hypothesis.event() now works for hashable objects which do not
|
|||
|
support weakrefs, such as integers and tuples.
|
|||
|
- Release 6.48.2
|
|||
|
* This patch tidies up some internal introspection logic, which
|
|||
|
will improve support for positional-only arguments in a future
|
|||
|
release (issue #2706).
|
|||
|
- Release 6.48.1
|
|||
|
* This release automatically rewrites some simple filters, such
|
|||
|
as floats().filter(lambda x: x >= 10) to the more efficient
|
|||
|
floats(min_value=10), based on the AST of the predicate.
|
|||
|
* We continue to recommend using the efficient form directly
|
|||
|
wherever possible, but this should be useful for e.g. pandera
|
|||
|
“Checks” where you already have a simple predicate and
|
|||
|
translating manually is really annoying. See issue #2701 for
|
|||
|
details.
|
|||
|
- Release 6.48.0
|
|||
|
* This release raises SkipTest for which never executed any
|
|||
|
examples, for example because the phases setting excluded the
|
|||
|
explicit, reuse, and generate phases. This helps to avoid cases
|
|||
|
where broken tests appear to pass, because they didn’t actually
|
|||
|
execute (issue #3328).
|
|||
|
- Release 6.47.5
|
|||
|
* This patch fixes type annotations that had caused the signature
|
|||
|
of @given to be partially-unknown to type-checkers for Python
|
|||
|
versions before 3.10.
|
|||
|
- Release 6.47.4
|
|||
|
* This patch fixes from_type() on Python 3.11, following
|
|||
|
python/cpython#93754.
|
|||
|
- Release 6.47.3
|
|||
|
* This patch makes the too_slow health check more consistent with
|
|||
|
long deadline tests (issue #3367) and fixes an install issue
|
|||
|
under pipenv which was introduced in Hypothesis 6.47.2 (issue
|
|||
|
#3374).
|
|||
|
- Release 6.47.2
|
|||
|
* We now use the PEP 654 ExceptionGroup type - provided by the
|
|||
|
exceptiongroup backport on older Pythons - to ensure that if
|
|||
|
multiple errors are raised in teardown, they will all
|
|||
|
propagate.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Jun 13 12:58:35 UTC 2022 - Ben Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to 6.47.1
|
|||
|
* Our pretty-printer no longer sorts dictionary keys, since
|
|||
|
iteration order is stable in Python 3.7+ and this can affect
|
|||
|
reproducing examples (issue #3370). This PR was kindly
|
|||
|
supported by Ordina Pythoneers.
|
|||
|
- Release 6.47.0
|
|||
|
* The Ghostwritter can now write tests for @classmethod or
|
|||
|
@staticmethod methods, in addition to the existing support for
|
|||
|
functions and other callables (issue #3318). Thanks to Cheuk
|
|||
|
Ting Ho for the patch.
|
|||
|
- Release 6.46.11
|
|||
|
* Mention hypothesis.strategies.timezones() in the documentation
|
|||
|
of hypothesis.strategies.datetimes() for completeness.
|
|||
|
* Thanks to George Macon for this addition.
|
|||
|
- Release 6.46.10
|
|||
|
* This release contains some small improvements to our
|
|||
|
documentation. Thanks to Felix Divo for his contribution!
|
|||
|
- Release 6.46.9
|
|||
|
* This patch by Adrian Garcia Badaracco adds type annotations to
|
|||
|
some private internals (issue #3074).
|
|||
|
- Release 6.46.8
|
|||
|
* This patch by Phillip Schanely makes changes to the floats()
|
|||
|
strategy when min_value or max_value is present. Hypothesis
|
|||
|
will now be capable of generating every representable value in
|
|||
|
the bounds. You may notice that hypothesis is more likely to
|
|||
|
test values near boundaries, and values that are very close to
|
|||
|
zero.
|
|||
|
* These changes also support future integrations with symbolic
|
|||
|
execution tools and fuzzers (issue #3086).
|
|||
|
- Release 6.46.7
|
|||
|
* This patch updates the type annotations for tuples() and
|
|||
|
one_of() so that type-checkers require its arguments to be
|
|||
|
positional-only, and so that it no longer fails under
|
|||
|
pyright-strict mode (see issue #3348). Additional changes are
|
|||
|
made to Hypothesis’ internals improve pyright scans.
|
|||
|
- Release 6.46.6
|
|||
|
* This patch by Cheuk Ting Ho adds support for PEP 655 Required
|
|||
|
and NotRequired as attributes of TypedDict in from_type()
|
|||
|
(issue #3339).
|
|||
|
- Release 6.46.5
|
|||
|
* This patch fixes from_dtype() with long-precision
|
|||
|
floating-point datatypes (typecode g; see numpy.typename()).
|
|||
|
- Release 6.46.4
|
|||
|
* This patch improves some error messages for custom signatures
|
|||
|
containing invalid parameter names (issue #3317).
|
|||
|
- Release 6.46.3
|
|||
|
* This patch by Cheuk Ting Ho makes it an explicit error to call
|
|||
|
from_type() or register_type_strategy() with types that have no
|
|||
|
runtime instances (issue #3280).
|
|||
|
- Release 6.46.2
|
|||
|
* This patch fixes silently dropping examples when the @example
|
|||
|
decorator is applied to itself (issue #3319). This was always a
|
|||
|
weird pattern, but now it works. Thanks to Ray Sogata, Keeri
|
|||
|
Tramm, and Kevin Khuong for working on this patch!
|
|||
|
- Release 6.46.1
|
|||
|
* This patch fixes a rare bug where we could incorrectly treat
|
|||
|
empty as a type annotation, if the callable had an explicitly
|
|||
|
assigned __signature__.
|
|||
|
- Release 6.46.0
|
|||
|
* This release adds an allow_nil argument to uuids(), which you
|
|||
|
can use to… generate the nil UUID. Thanks to Shlok Gandhi for
|
|||
|
the patch!
|
|||
|
- Release 6.45.4
|
|||
|
* This patch fixes some missing imports for certain Ghostwritten
|
|||
|
tests. Thanks to Mel Seto for fixing issue #3316.
|
|||
|
- Release 6.45.3
|
|||
|
* This patch teaches the Ghostwriter to recognize many more
|
|||
|
common argument names (issue #3311).
|
|||
|
- Release 6.45.2
|
|||
|
* This patch fixes issue #3314, where Hypothesis would raise an
|
|||
|
internal error from domains() or (only on Windows) from
|
|||
|
timezones() in some rare circumstances where the installation
|
|||
|
was subtly broken.
|
|||
|
* Thanks to Munir Abdinur for this contribution.
|
|||
|
- Release 6.45.1
|
|||
|
* This release fixes deprecation warnings about sre_compile and
|
|||
|
sre_parse imports and importlib.resources usage when running
|
|||
|
Hypothesis on Python 3.11.
|
|||
|
+ Thanks to Florian Bruhin for this contribution.
|
|||
|
- Release 6.45.0
|
|||
|
* This release updates xps.indices() by introducing an
|
|||
|
allow_newaxis argument, defaulting to False. If
|
|||
|
allow_newaxis=True, indices can be generated that add
|
|||
|
dimensions to arrays, which is achieved by the indexer
|
|||
|
containing None. This change is to support a specification
|
|||
|
change that expand dimensions via indexing
|
|||
|
(data-apis/array-api#408).
|
|||
|
- Release 6.44.0
|
|||
|
* This release adds a names argument to indexes() and series(),
|
|||
|
so that you can create Pandas objects with specific or varied
|
|||
|
names.
|
|||
|
* Contributed by Sam Watts.
|
|||
|
- Release 6.43.3
|
|||
|
* This patch updates the type annotations for @given so that
|
|||
|
type-checkers will warn on mixed positional and keyword
|
|||
|
arguments, as well as fixing issue #3296.
|
|||
|
- Release 6.43.2
|
|||
|
* Fixed a type annotation for pyright --strict (issue #3287).
|
|||
|
- Release 6.43.1
|
|||
|
* This patch makes it an explicit error to call
|
|||
|
register_type_strategy() with a Pydantic GenericModel and a
|
|||
|
callable, because GenericModel isn’t actually a generic type at
|
|||
|
runtime and so you have to register each of the “parametrized
|
|||
|
versions” (actually subclasses!) manually. See issue #2940 for
|
|||
|
more details.
|
|||
|
- Release 6.43.0
|
|||
|
* This release makes it an explicit error to apply
|
|||
|
@pytest.fixture to a function which has already been decorated
|
|||
|
with @given(). Previously, pytest would convert your test to a
|
|||
|
fixture, and then never run it.
|
|||
|
- Release 6.42.3
|
|||
|
* This patch fixes from_type() on a TypedDict with complex
|
|||
|
annotations, defined in a file using from __future__ import
|
|||
|
annotations. Thanks to Katelyn Gigante for identifying and
|
|||
|
fixing this bug!
|
|||
|
- Release 6.42.2
|
|||
|
* The Hypothesis pytest plugin was not outputting valid xunit2
|
|||
|
nodes when --junit-xml was specified. This has been broken
|
|||
|
since Pytest 5.4, which changed the internal API for adding
|
|||
|
nodes to the junit report.
|
|||
|
* This also fixes the issue when using hypothesis with
|
|||
|
--junit-xml and pytest-xdist where the junit xml report would
|
|||
|
not be xunit2 compatible. Now, when using with pytest-xdist,
|
|||
|
the junit report will just omit the <properties> node.
|
|||
|
* For more details, see this pytest issue, this pytest issue, and
|
|||
|
issue #1935
|
|||
|
* Thanks to Brandon Chinn for this bug fix!
|
|||
|
- Release 6.42.1
|
|||
|
* This patch fixes pretty-printing of regular expressions in
|
|||
|
Python 3.11.0a7, and updates our vendored list of top-level
|
|||
|
domains,.
|
|||
|
- Release 6.42.0
|
|||
|
* This release makes st.functions(pure=True) less noisy (issue
|
|||
|
#3253), and generally improves pretty-printing of functions.
|
|||
|
- Release 6.41.0
|
|||
|
* This release changes the implementation of infer to be an alias
|
|||
|
for Ellipsis. E.g. @given(a=infer) is now equivalent to
|
|||
|
@given(a=...). Furthermore, @given(...) can now be specified so
|
|||
|
that @given will infer the strategies for all arguments of the
|
|||
|
decorated function based on its annotations.
|
|||
|
- Release 6.40.3
|
|||
|
* This patch simplifies the repr of the strategies namespace
|
|||
|
returned in make_strategies_namespace(), e.g.
|
|||
|
>>> from hypothesis.extra.array_api import make_strategies_namespace
|
|||
|
>>> from numpy import array_api as xp
|
|||
|
>>> xps = make_strategies_namespace(xp)
|
|||
|
>>> xps
|
|||
|
make_strategies_namespace(numpy.array_api)
|
|||
|
- Release 6.40.2
|
|||
|
* Fixed from_type() support for PEP 604 union types, like int |
|
|||
|
None (issue #3255).
|
|||
|
- Release 6.40.1
|
|||
|
* Fixed an internal error when given() was passed a lambda.
|
|||
|
- Release 6.40.0
|
|||
|
* The Ghostwriter can now write tests which check that two or
|
|||
|
more functions are equivalent on valid inputs, or raise the
|
|||
|
same type of exception for invalid inputs (issue #3267).
|
|||
|
- Release 6.39.6
|
|||
|
* This patch makes some quality-of-life improvements to the
|
|||
|
Ghostwriter: we guess the text() strategy for arguments named
|
|||
|
text (…obvious in hindsight, eh?); and improved the error
|
|||
|
message if you accidentally left in a nothing() or broke your
|
|||
|
rich install.
|
|||
|
- Release 6.39.5
|
|||
|
* This patch improves our error detection and message when
|
|||
|
Hypothesis is run on a Python implementation without support
|
|||
|
for -0.0, which is required for the floats() strategy but can
|
|||
|
be disabled by unsafe compiler options (issue #3265).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Mar 19 16:19:54 UTC 2022 - Ben Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to 6.39.4
|
|||
|
* This patch tweaks some internal formatting. There is no
|
|||
|
user-visible change.
|
|||
|
- Release 6.39.3
|
|||
|
* If the shrink phase is disabled, we now stop the generate phase
|
|||
|
as soon as an error is found regardless of the value of the
|
|||
|
report_multiple_examples setting, since that’s probably what
|
|||
|
you wanted (issue #3244).
|
|||
|
- Release 6.39.2
|
|||
|
* This patch clarifies rare error messages in builds() (issue
|
|||
|
#3225) and floats() (issue #3207).
|
|||
|
- Release 6.39.1
|
|||
|
* This patch fixes a regression where the bound inner function
|
|||
|
(your_test.hypothesis.inner_test) would be invoked with
|
|||
|
positional arguments rather than passing them by name, which
|
|||
|
broke pytest-asyncio (issue #3245).
|
|||
|
- 6.39.0
|
|||
|
* This release improves Hypothesis’ handling of positional-only
|
|||
|
arguments, which are now allowed @st.composite strategies.
|
|||
|
* On Python 3.8 and later, the first arguments to builds() and
|
|||
|
from_model() are now natively positional-only. In cases which
|
|||
|
were already errors, the TypeError from incorrect usage will
|
|||
|
therefore be raises immediately when the function is called,
|
|||
|
rather than when the strategy object is used.
|
|||
|
- Release 6.38.0
|
|||
|
* This release makes floats() error consistently when your
|
|||
|
floating-point hardware has been configured to violate IEEE-754
|
|||
|
for subnormal numbers, instead of only when an internal
|
|||
|
assertion was tripped (issue #3092).
|
|||
|
* If this happens to you, passing allow_subnormal=False will
|
|||
|
suppress the explicit error. However, we strongly recommend
|
|||
|
fixing the root cause by disabling global-effect unsafe-math
|
|||
|
compiler options instead, or at least consulting e.g. Simon
|
|||
|
Byrne’s Beware of fast-math explainer first.
|
|||
|
- Release 6.37.2
|
|||
|
* This patch fixes a bug in stateful testing, where returning a
|
|||
|
single value wrapped in multiple() would be printed such that
|
|||
|
the assigned variable was a tuple rather than the single
|
|||
|
element (issue #3236).
|
|||
|
- Release 6.37.1
|
|||
|
* This patch fixes a warning under pytest 7 relating to our rich
|
|||
|
traceback display logic (issue #3223).
|
|||
|
- Release 6.37.0
|
|||
|
* When distinguishing multiple errors, Hypothesis now looks at
|
|||
|
the inner exceptions of PEP 654 ExceptionGroups.
|
|||
|
- Release 6.36.2
|
|||
|
* This patch updates our vendored list of top-level domains,
|
|||
|
which is used by the provisional domains() strategy.
|
|||
|
- Release 6.36.1
|
|||
|
* This patch fixes some deprecation warnings from pytest 7.0,
|
|||
|
along with some code formatting and docs updates.
|
|||
|
- Release 6.36.0
|
|||
|
* This release disallows using typing.Final with from_type() and
|
|||
|
register_type_strategy().
|
|||
|
* Why? Because Final can only be used during class definition. We
|
|||
|
don’t generate class attributes.
|
|||
|
* It also does not make sense as a runtime type on its own.
|
|||
|
- Release 6.35.1
|
|||
|
* This patch fixes hypothesis write output highlighting with rich
|
|||
|
version 12.0 and later.
|
|||
|
- Drop importorskip-numpy-pandas.patch
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Jan 20 16:04:34 UTC 2022 - Matej Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Correct exclusion of test_recursion_error_is_not_flaky for 3.10.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Jan 10 16:47:37 UTC 2022 - Matej Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Upgrade to 6.35.0:
|
|||
|
- This release disallows using "typing.ClassVar" with
|
|||
|
"from_type()" and "register_type_strategy()". Why? Because
|
|||
|
"ClassVar" can only be used during "class" definition. We
|
|||
|
don't generate class attributes. It also does not make sense
|
|||
|
as a runtime type on its own.
|
|||
|
- Updates our vendored list of top-level domains, which is used
|
|||
|
by the provisional "domains()" strategy.
|
|||
|
- Fixes issue #3169, an extremely rare bug which would trigger
|
|||
|
if an internal least-recently-reused cache dropped a newly
|
|||
|
added entry immediately after it was added.
|
|||
|
- Fixes issue #3133 and issue #3144, where attempting to
|
|||
|
generate Pandas series of lists or sets would fail with
|
|||
|
confusing errors if you did not specify "dtype=object".
|
|||
|
- Disallows using "typing.TypeAlias" with "from_type()" and
|
|||
|
"register_type_strategy()". Why? Because "TypeAlias" is not
|
|||
|
really a type, it is a tag for type checkers that some
|
|||
|
expression is a type alias, not something else. It does not
|
|||
|
make sense for Hypothesis to resolve it as a strategy.
|
|||
|
- Updates our autoformatting tools, improving our code style
|
|||
|
without any API changes.
|
|||
|
- Drops support for Python 3.6, which reached end of life
|
|||
|
upstream on 2021-12-23.
|
|||
|
- Adds a temporary hook for a downstream tool, which is not
|
|||
|
part of the public API.
|
|||
|
- Updates our copyright headers to use a general authorship
|
|||
|
statement and omit the year.
|
|||
|
- Skip also test_recursion_error_is_not_flaky
|
|||
|
(gh#HypothesisWorks/hypothesis#3035)
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Dec 12 11:40:54 UTC 2021 - Ben Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to 6.31.4
|
|||
|
* This patch makes the .example() method more representative of
|
|||
|
test-time data generation, albeit often at a substantial cost
|
|||
|
to readability (issue #3182).
|
|||
|
- Release 6.31.3
|
|||
|
* This patch improves annotations on some of Hypothesis’ internal
|
|||
|
functions, in order to deobfuscate the signatures of some
|
|||
|
strategies. In particular, strategies shared between
|
|||
|
hypothesis.extra.numpy and the hypothesis.extra.array_api extra
|
|||
|
will benefit from this patch.
|
|||
|
- Release 6.31.2
|
|||
|
* This patch fix invariants display in stateful falsifying
|
|||
|
examples (issue #3185).
|
|||
|
- Release 6.31.1
|
|||
|
* This patch updates xps.indices() so no flat indices are
|
|||
|
generated, i.e. generated indices will now always explicitly
|
|||
|
cover each axes of an array if no ellipsis is present. This is
|
|||
|
to be consistent with a specification change that dropped
|
|||
|
support for flat indexing (#272).
|
|||
|
- Release 6.31.0
|
|||
|
* This release makes us compatible with Django 4.0, in particular
|
|||
|
by adding support for use of zoneinfo timezones (though we
|
|||
|
respect the new USE_DEPRECATED_PYTZ setting if you need it).
|
|||
|
- Revert last mandatory requires update. Optional dependencies need
|
|||
|
to be declared by consuming packages (see hypothesis packaging
|
|||
|
doc)
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Dec 6 18:10:30 UTC 2021 - Dirk Müller <dmueller@suse.com>
|
|||
|
|
|||
|
- fix requires
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Dec 6 09:35:44 UTC 2021 - Matej Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Fix filelist
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Dec 5 18:29:41 UTC 2021 - Axel Braun <axel.braun@gmx.de>
|
|||
|
|
|||
|
- version 6.30.1
|
|||
|
some tests skipped for python 3.6
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Dec 4 18:31:49 UTC 2021 - Axel Braun <axel.braun@gmx.de>
|
|||
|
|
|||
|
- update 6.30.0
|
|||
|
tests/test_api disabled as recommended
|
|||
|
https://github.com/HypothesisWorks/hypothesis/issues/3178
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Oct 23 15:32:25 UTC 2021 - Axel Braun <axel.braun@gmx.de>
|
|||
|
|
|||
|
- update to 6.24.0
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Jul 5 09:56:29 UTC 2021 - Antonio Larrosa <alarrosa@suse.com>
|
|||
|
|
|||
|
- Update to 6.14.1
|
|||
|
* Full changelog since 6.8.1:
|
|||
|
https://hypothesis.readthedocs.io/en/latest/changes.html
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Mar 20 22:28:47 UTC 2021 - Ben Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to 6.8.1
|
|||
|
* Full changelog since 5.41.2:
|
|||
|
https://hypothesis.readthedocs.io/en/latest/changes.html
|
|||
|
- Changes in major version 6:
|
|||
|
* Many functions now use PEP 3102 keyword-only arguments where
|
|||
|
passing positional arguments was deprecated since 5.5.
|
|||
|
* hypothesis.extra.django.from_model() no longer accepts model
|
|||
|
as a keyword argument, where it could conflict with fields
|
|||
|
named “model”.
|
|||
|
* randoms() now defaults to use_true_random=False.
|
|||
|
* complex_numbers() no longer accepts min_magnitude=None; either
|
|||
|
use min_magnitude=0 or just omit the argument.
|
|||
|
* hypothesis.provisional.ip4_addr_strings and ip6_addr_strings
|
|||
|
are removed in favor of ip_addresses(v=...).map(str).
|
|||
|
* register_type_strategy() no longer accepts generic types with
|
|||
|
type arguments, which were always pretty badly broken.
|
|||
|
* Using function-scoped pytest fixtures is now a health-check
|
|||
|
error, instead of a warning.
|
|||
|
- Don't test numpy and pandas for python36 (NEP29)
|
|||
|
* add distro specific importorskip-numpy-pandas.patch
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Nov 17 18:22:29 UTC 2020 - Teemu Mannermaa <wicked@iki.fi>
|
|||
|
|
|||
|
- Fix failing tests:
|
|||
|
* Also skip %python_clone during build of tests flavor.
|
|||
|
* Recommend python-redis and BR python-fakeredis that are needed
|
|||
|
for new redis based ExampleDatabase implemention.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Nov 11 12:15:41 UTC 2020 - Dirk Mueller <dmueller@suse.com>
|
|||
|
|
|||
|
- update to 5.41.2:
|
|||
|
* long list of changes and improvements, see
|
|||
|
https://hypothesis.readthedocs.io/en/latest/changes.html#v5-41-2
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Aug 12 20:51:26 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to version 5.24.2
|
|||
|
* This release improves shrink quality by allowing Hypothesis to
|
|||
|
automatically learn new shrink passes for difficult to shrink
|
|||
|
tests.
|
|||
|
* The automatic learning is not currently accessible in user code
|
|||
|
(it still needs significant work on robustness and performance
|
|||
|
before it is ready for that), but this release includes learned
|
|||
|
passes that should improve shrinking quality for tests which
|
|||
|
use any of the text(), hypothesis.strategies.floats,
|
|||
|
hypothesis.strategies.datetimes, hypothesis.strategies.emails,
|
|||
|
and complex_numbers() strategies.
|
|||
|
- Update to version 5.24.1
|
|||
|
* This patch updates some docstrings, without changing runtime
|
|||
|
behaviour.
|
|||
|
- add comment about source archive
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Aug 11 12:28:11 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Update to version 5.24.0
|
|||
|
* The functions() strategy has a new argument pure=True,
|
|||
|
which ensures that the same return value is generated
|
|||
|
for identical calls to the generated function (issue
|
|||
|
#2538).
|
|||
|
* Thanks to Zac Hatfield-Dodds and Nikita Sobolev for this
|
|||
|
feature!
|
|||
|
- Update to version 5.23.12
|
|||
|
* This release removes a number of Hypothesis's internal
|
|||
|
"shrink passes" - transformations it makes to a
|
|||
|
generated test case during shrinking - which appeared to
|
|||
|
be redundant with other transformations.
|
|||
|
* It is unlikely that you will see much impact from this.
|
|||
|
If you do, it will likely show up as a change in
|
|||
|
shrinking performance (probably slower, maybe faster),
|
|||
|
or possibly in worse shrunk results. If you encounter
|
|||
|
the latter, please let us know.
|
|||
|
- remove rpmlintrc again
|
|||
|
- use only github source repository (python subdir) in obscpio
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Aug 8 08:41:01 UTC 2020 - Benjamin Greiner <code@bnavigator.de>
|
|||
|
|
|||
|
- Use PyPI source for package and test it with tests from the
|
|||
|
Github repository -- source hypothesis-python-tests-5.23.11
|
|||
|
as direct CPIO archive hypothesis-python-tests-5.23.11.obscpio
|
|||
|
created by (locally run) obs_scm service
|
|||
|
- Reenable django and pandas tests
|
|||
|
- With ringdisabled, do not run test flavor at all
|
|||
|
- Require and use pytest-xdist in tests
|
|||
|
* Reenables the one skipped test
|
|||
|
* Trims total build time by a large factor despite now running
|
|||
|
pandas and django tests too!
|
|||
|
- Drop failing-test_array_values_are_unique_high_collision.patch
|
|||
|
* Fix the test instead gh#HypothesisWorks/hypothesis#2447
|
|||
|
- python-hypothesis-rpmlintrc -- filter empty types file
|
|||
|
- Sync requirements versions to setup.py
|
|||
|
* newer versions probably came from wrong interpretation of
|
|||
|
upstream's version pinning
|
|||
|
- Update to version 5.23.11
|
|||
|
* This release fixes a bug in some internal Hypothesis support
|
|||
|
code. It has no user visible impact.
|
|||
|
- Update to version 5.23.10
|
|||
|
* This release improves the quality of shrunk test cases in some
|
|||
|
special cases. Specifically, it should get shrinking unstuck in
|
|||
|
some scenarios which require simultaneously changing two parts
|
|||
|
of the generated test case.
|
|||
|
- Update to version 5.23.9
|
|||
|
* This release improves the performance of some internal support
|
|||
|
code. It has no user visible impact, as that code is not
|
|||
|
currently run during normal Hypothesis operation.
|
|||
|
- Update to version 5.23.8
|
|||
|
* This release adds a heuristic to detect when shrinking has
|
|||
|
finished despite the fact that there are many more possible
|
|||
|
transformations to try. This will be particularly useful for
|
|||
|
tests where the minimum failing test case is very large despite
|
|||
|
there being many smaller test cases possible, where it is
|
|||
|
likely to speed up shrinking dramatically.
|
|||
|
* In some cases it is likely that this will result in worse
|
|||
|
shrunk test cases. In those cases rerunning the test will
|
|||
|
result in further shrinking.
|
|||
|
- Update to version 5.23.7
|
|||
|
* This release makes some performance improvements to shrinking.
|
|||
|
They should only be noticeable for tests that are currently
|
|||
|
particularly slow to shrink.
|
|||
|
- Update to version 5.23.6
|
|||
|
* This patch adds some more internal functions to support a new
|
|||
|
feature we're working on, like version 5.18.3. There is still
|
|||
|
no user-visible changes yet.
|
|||
|
- Update to version 5.23.5
|
|||
|
* This release makes some changes to internal support code that
|
|||
|
is not currently used in production Hypothesis. It has no user
|
|||
|
visible effect at present.
|
|||
|
- Update to version 5.23.4
|
|||
|
* This release improves shrinking quality in some special cases.
|
|||
|
- Update to version 5.23.3
|
|||
|
* This release fixes issue #2507, where lazy evaluation meant
|
|||
|
that the values drawn from a sampled_from() strategy could
|
|||
|
depend on mutations of the sampled sequence that happened after
|
|||
|
the strategy was constructed.
|
|||
|
- Update to version 5.23.2
|
|||
|
* This patch fixes issue #2462, a bug in our handling of
|
|||
|
unittest.TestCase.subTest(). Thanks to Israel Fruchter for
|
|||
|
fixing this at the EuroPython sprints!
|
|||
|
- Update to version 5.23.1
|
|||
|
* This release improves the behaviour of the characters()
|
|||
|
strategy when shrinking, by changing which characters are
|
|||
|
considered smallest to prefer more "normal" ascii
|
|||
|
characters where available.
|
|||
|
- Update to version 5.23.0
|
|||
|
* The default print_blob setting is now smarter. It defaults to
|
|||
|
True in CI and False for local development.
|
|||
|
* Thanks to Hugo van Kemenade for implementing this feature at
|
|||
|
the EuroPython sprints!
|
|||
|
- Update to version 5.22.0
|
|||
|
* The slices() strategy can now generate slices for empty
|
|||
|
sequences, slices with negative start and stop indices (from
|
|||
|
the end of the sequence), and step=None in place of step=1.
|
|||
|
* Thanks to Sangarshanan for implementing this feature at the
|
|||
|
EuroPython sprints!
|
|||
|
- Update to version 5.21.0
|
|||
|
* This release ensures that tests which raise RecursionError are
|
|||
|
not reported as flaky simply because we run them from different
|
|||
|
initial stack depths (issue #2494).
|
|||
|
- Update to version 5.20.4
|
|||
|
* This release improves the performance of the sample method on
|
|||
|
objects obtained from randoms() when use_true_random=False.
|
|||
|
This should mostly only be noticeable when the sample size is a
|
|||
|
large fraction of the population size, but may also help avoid
|
|||
|
health check failures in some other cases.
|
|||
|
- Update to version 5.20.3
|
|||
|
* This release makes some internal changes for testing purposes
|
|||
|
and should have no user visible effect.
|
|||
|
- Update to version 5.20.2
|
|||
|
* This release fixes a small caching bug in Hypothesis internals
|
|||
|
that may under some circumstances have resulted in a less
|
|||
|
diverse set of test cases being generated than was intended.
|
|||
|
* Fixing this problem revealed some performance problems that
|
|||
|
could occur during targeted property based testing, so this
|
|||
|
release also fixes those. Targeted property-based testing
|
|||
|
should now be significantly faster in some cases, but this may
|
|||
|
be at the cost of reduced effectiveness.
|
|||
|
- Update to version 5.20.1
|
|||
|
* This patch updates our formatting to use isort 5. There is no
|
|||
|
user-visible change.
|
|||
|
- Update to version 5.20.0
|
|||
|
* The basic_indices() strategy can now generate bare indexers in
|
|||
|
place of length-one tuples. Thanks to Andrea for this patch!
|
|||
|
- Update to version 5.19.3
|
|||
|
* This patch removes an internal use of distutils in order to
|
|||
|
avoid this setuptools warning for some users.
|
|||
|
- Update to version 5.19.2
|
|||
|
* This patch contains a small internal refactoring with no
|
|||
|
user-visible impact.
|
|||
|
Thanks to Andrea for writing this at the SciPy 2020 Sprints!
|
|||
|
- Update to version 5.19.1
|
|||
|
* This release slightly improves shrinking behaviour. This should
|
|||
|
mainly only impact stateful tests, but may have some minor
|
|||
|
positive impact on shrinking collections (lists, sets, etc).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Jul 2 16:44:48 UTC 2020 - Antonio Larrosa <alarrosa@suse.com>
|
|||
|
|
|||
|
- Update to version 5.19.0:
|
|||
|
* This release improves the randoms() strategy by adding support
|
|||
|
for Random instances where Hypothesis generates the random
|
|||
|
values rather than having them be “truly” random.
|
|||
|
|
|||
|
- Update to version 5.18.3:
|
|||
|
* This patch adds some internal functions to support a new feature
|
|||
|
we’re working on. There is no user-visible change… yet.
|
|||
|
|
|||
|
- Update to version 5.18.2:
|
|||
|
* This patch improves our docs for the derandomize setting.
|
|||
|
|
|||
|
- Update to version 5.18.1:
|
|||
|
* This release consists of some internal refactoring to the shrinker
|
|||
|
in preparation for future work. It has no user visible impact.
|
|||
|
|
|||
|
- Update to version 5.18.0:
|
|||
|
* This release teaches Hypothesis to shorten tracebacks for explicit
|
|||
|
examples, as we already do for generated examples, so that you can
|
|||
|
focus on your code rather than ours.
|
|||
|
|
|||
|
* If you have multiple failing explicit examples, they will now all
|
|||
|
be reported. To report only the first failure, you can use the
|
|||
|
report_multiple_bugs=False setting as for generated examples.
|
|||
|
|
|||
|
- Update to version 5.17.0:
|
|||
|
* This patch adds strategy inference for the Literal, NewType, Type,
|
|||
|
DefaultDict, and TypedDict types from the typing_extensions
|
|||
|
backport on PyPI.
|
|||
|
|
|||
|
- Update to version 5.16.3:
|
|||
|
* This patch precomputes some of the setup logic for our
|
|||
|
experimental external fuzzer integration and sets deadline=None
|
|||
|
in fuzzing mode, saving around 150us on each iteration.
|
|||
|
|
|||
|
* This is around two-thirds the runtime to fuzz an empty test with
|
|||
|
@given(st.none()), and nice to have even as a much smaller
|
|||
|
fraction of the runtime for non-trivial tests.
|
|||
|
|
|||
|
- Update to version 5.16.2:
|
|||
|
* This patch fixes an internal error when warning about the use of
|
|||
|
function-scoped fixtures for parametrised tests where the
|
|||
|
parametrised value contained a % character.
|
|||
|
|
|||
|
- Update to version 5.16.1:
|
|||
|
* If you pass a list or tuple where a strategy was expected, the
|
|||
|
error message now mentions sampled_from() as an example strategy.
|
|||
|
|
|||
|
- Update to version 5.16.0:
|
|||
|
* functions() can now infer the appropriate returns strategy if you
|
|||
|
pass a like function with a return-type annotation. Before,
|
|||
|
omitting the returns argument would generate functions that
|
|||
|
always returned None.
|
|||
|
|
|||
|
- Update to version 5.15.1:
|
|||
|
* Fix from_type() with generic types under Python 3.9.
|
|||
|
|
|||
|
- Update to version 5.15.0:
|
|||
|
* This patch fixes an error that happens when multiple threads
|
|||
|
create new strategies.
|
|||
|
|
|||
|
- Update to version 5.14.0:
|
|||
|
* Passing min_magnitude=None to complex_numbers() is now deprecated.
|
|||
|
You can explicitly pass min_magnitude=0, or omit the argument entirely.
|
|||
|
|
|||
|
- Update to version 5.13.1:
|
|||
|
* This patch fixes an internal error in from_type() for
|
|||
|
typing.NamedTuple in Python 3.9.
|
|||
|
|
|||
|
- Update to version 5.13.0:
|
|||
|
* This release upgrades the test statistics available via
|
|||
|
the –hypothesis-show-statistics option to include separate
|
|||
|
information on each of the phases (issue #1555).
|
|||
|
|
|||
|
- Update to version 5.12.2:
|
|||
|
* This patch teaches the from_type() internals to return slightly
|
|||
|
more efficient strategies for some generic sets and mappings.
|
|||
|
|
|||
|
- Update to version 5.12.1:
|
|||
|
* This patch adds a # noqa comment for flake8 3.8.0, which
|
|||
|
disagrees with mypy about how to write the type of ....
|
|||
|
|
|||
|
- Update to version 5.12.0:
|
|||
|
* This release limits the maximum duration of the shrinking phase
|
|||
|
to five minutes, so that Hypothesis does not appear to hang when
|
|||
|
making very slow progress shrinking a failing example
|
|||
|
(issue #2340).
|
|||
|
|
|||
|
* If one of your tests triggers this logic, we would really
|
|||
|
appreciate a bug report to help us improve the shrinker for
|
|||
|
difficult but realistic workloads.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu May 21 14:56:04 UTC 2020 - Matej Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Add failing-test_array_values_are_unique_high_collision.patch
|
|||
|
to avoid failing test on i586 (gh#HypothesisWorks/hypothesis#2447)
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat May 9 16:08:23 UTC 2020 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 5.11.0:
|
|||
|
* This release improves the interaction between assume() and the
|
|||
|
@example() decorator, so that the following test no longer fails
|
|||
|
with UnsatisfiedAssumption (issue #2125):
|
|||
|
@given(value=floats(0, 1))
|
|||
|
@example(value=0.56789) # used to make the test fail!
|
|||
|
@pytest.mark.parametrize("threshold", [0.5, 1])
|
|||
|
def test_foo(threshold, value):
|
|||
|
assume(value < threshold)
|
|||
|
...
|
|||
|
|
|||
|
- changes from version 5.10.5 :
|
|||
|
* If you have django installed but don’t use it, this patch will
|
|||
|
make import hypothesis a few hundred milliseconds faster
|
|||
|
(e.g. 0.704s -> 0.271s).
|
|||
|
Thanks to importtime-waterfall for highlighting this problem and
|
|||
|
Jake Vanderplas for the solution - it’s impossible to misuse code
|
|||
|
from a module you haven’t imported!
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Apr 24 15:18:51 UTC 2020 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- specfile:
|
|||
|
* updated Django version number in requirements
|
|||
|
|
|||
|
- update to version 5.10.4:
|
|||
|
* This patch improves the internals of builds() type inference, to
|
|||
|
handle recursive forward references in certain dataclasses. This
|
|||
|
is useful for e.g. hypothesmith’s forthcoming LibCST mode.
|
|||
|
|
|||
|
- changes from version 5.10.3:
|
|||
|
* This release reverses the order in which some operations are tried
|
|||
|
during shrinking. This should generally be a slight performance
|
|||
|
improvement, but most tests are unlikely to notice much
|
|||
|
difference.
|
|||
|
|
|||
|
- changes from version 5.10.2:
|
|||
|
* This patch fixes issue #2406, where use of pandas.Timestamp
|
|||
|
objects as bounds for the datetimes() strategy caused an internal
|
|||
|
error. This bug was introduced in version 5.8.1.
|
|||
|
|
|||
|
- changes from version 5.10.1:
|
|||
|
* This release is a small internal refactoring to how shrinking
|
|||
|
interacts with targeted property-based testing that should have no
|
|||
|
user user visible impact.
|
|||
|
|
|||
|
- changes from version 5.10.0:
|
|||
|
* This release improves our support for datetimes and times around
|
|||
|
DST transitions.
|
|||
|
* times() and datetimes() are now sometimes generated with fold=1,
|
|||
|
indicating that they represent the second occurrence of a given
|
|||
|
wall-time when clocks are set backwards. This may be set even when
|
|||
|
there is no transition, in which case the fold value should be
|
|||
|
ignored.
|
|||
|
For consistency, timezones provided by the pytz package can now
|
|||
|
generate imaginary times (such as the hour skipped over when
|
|||
|
clocks ‘spring forward’ to daylight saving time, or during some
|
|||
|
historical timezone transitions). All other timezones have always
|
|||
|
supported generation of imaginary times.
|
|||
|
If you prefer the previous behaviour, datetimes() now takes an
|
|||
|
argument allow_imaginary which defaults to True but can be set to
|
|||
|
False for any timezones strategy.
|
|||
|
|
|||
|
- changes from version 5.9.1 :
|
|||
|
* This patch fixes the rendering of binary() docstring by using the
|
|||
|
proper backticks syntax.
|
|||
|
|
|||
|
- changes from version 5.9.0 :
|
|||
|
* Failing tests which use target() now report the highest score
|
|||
|
observed for each target alongside the failing example(s), even
|
|||
|
without explicitly showing test statistics.
|
|||
|
* This improves the debugging workflow for tests of accuracy, which
|
|||
|
assert that the total imprecision is within some error budget -
|
|||
|
for example, abs(a - b) < 0.5. Previously, shrinking to a minimal
|
|||
|
failing example could often make errors seem smaller or more
|
|||
|
subtle than they really are (see the threshold problem, and issue
|
|||
|
#2180).
|
|||
|
|
|||
|
- changes from version 5.8.6 :
|
|||
|
* This patch improves the docstring of binary(), the repr() of
|
|||
|
sampled_from() on an enum.Enum subclass, and a warning in our
|
|||
|
pytest plugin. There is no change in runtime behaviour.
|
|||
|
|
|||
|
- changes from version 5.8.5 :
|
|||
|
* This release (potentially very significantly) improves the
|
|||
|
performance of failing tests in some rare cases, mostly only
|
|||
|
relevant when using targeted property-based testing, by stopping
|
|||
|
further optimisation of unrelated test cases once a failing
|
|||
|
example is found.
|
|||
|
|
|||
|
- changes from version 5.8.4 :
|
|||
|
* This release fixes issue #2395, where under some circumstances
|
|||
|
targeted property-based testing could cause Hypothesis to get
|
|||
|
caught in an infinite loop.
|
|||
|
|
|||
|
- changes from version 5.8.3 :
|
|||
|
* This patch teaches builds() and from_type() to use the
|
|||
|
__signature__ attribute of classes where it has been set,
|
|||
|
improving our support for Pydantic models (in pydantic >= 1.5).
|
|||
|
|
|||
|
- changes from version 5.8.2 :
|
|||
|
* This release improves the performance of the part of the core
|
|||
|
engine that deliberately generates duplicate values.
|
|||
|
|
|||
|
- changes from version 5.8.1 :
|
|||
|
* This patch improves dates() shrinking, to simplify year, month,
|
|||
|
and day like datetimes() rather than minimizing the number of days
|
|||
|
since 2000-01-01.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Apr 9 12:28:15 UTC 2020 - Marketa Calabkova <mcalabkova@suse.com>
|
|||
|
|
|||
|
- update to version 5.8.0
|
|||
|
* Python2 finally dropped!
|
|||
|
* Many code fixups, removals, refactorings and so on.
|
|||
|
* No need for python-pytz
|
|||
|
* Drop support for Python 3.5
|
|||
|
* Just see hypothesis-python/docs/changes.rst
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Dec 13 00:20:18 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 4.53.2:
|
|||
|
* This release reorganises a number of the Hypothesis internal
|
|||
|
modules into a package structure. If you are only depending on the
|
|||
|
public API it should have no effect. If you are depending on the
|
|||
|
internal API (which you shouldn’t be, and which we don’t guarantee
|
|||
|
compatibility on) you may have to rename some imports.
|
|||
|
|
|||
|
- changes from version 4.53.1:
|
|||
|
* This release changes the size distribution of the number of steps
|
|||
|
run in stateful testing: It will now almost always run the maximum
|
|||
|
number of steps permitted.
|
|||
|
|
|||
|
- changes from version 4.53.0:
|
|||
|
* Test Statistics now include the best score seen for each label,
|
|||
|
which can help avoid the threshold problem when the minimal
|
|||
|
example shrinks right down to the threshold of failure (issue
|
|||
|
#2180).
|
|||
|
|
|||
|
- changes from version 4.52.0:
|
|||
|
* This release changes the stateful_step_count setting to raise an
|
|||
|
error if set to 0. This is a backwards compatible change because a
|
|||
|
value of 0 would never have worked and attempting to run it would
|
|||
|
have resulted in an internal assertion error.
|
|||
|
|
|||
|
- changes from version 4.51.1:
|
|||
|
* This release makes a small internal change to the distribution of
|
|||
|
test cases. It is unlikely to have much user visible impact.
|
|||
|
|
|||
|
- changes from version 4.51.0:
|
|||
|
* This release deprecates use of @example, @seed, or
|
|||
|
@reproduce_failure without @given.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Dec 7 17:43:19 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 4.50.8:
|
|||
|
* This patch makes certain uses of Bundles more efficient in
|
|||
|
stateful testing (issue #2078).
|
|||
|
|
|||
|
- changes from version 4.50.7:
|
|||
|
* This release refactors some of Hypothesis’s internal interfaces
|
|||
|
for representing data generation. It should have no user visible
|
|||
|
effect.
|
|||
|
|
|||
|
- changes from version 4.50.6:
|
|||
|
* This patch removes some old debugging helpers in our Numpy extra
|
|||
|
which have not been needed since issue #1963 and issue #2245.
|
|||
|
|
|||
|
- changes from version 4.50.5:
|
|||
|
* This patch fixes issue #2229, where Numpy arrays of unsized
|
|||
|
strings would only ever have strings of size one due to an
|
|||
|
interaction between our generation logic and Numpy’s allocation
|
|||
|
strategy.
|
|||
|
|
|||
|
- changes from version 4.50.4:
|
|||
|
* This patch fixes a rare internal error in strategies for a list of
|
|||
|
unique items sampled from a short non-unique sequence (issue
|
|||
|
#2247). The bug was discovered via hypothesis-jsonschema.
|
|||
|
|
|||
|
- changes from version 4.50.3:
|
|||
|
* This release improves the error message when @settings tries to
|
|||
|
inherit settings from a parent argument that isn’t a settings
|
|||
|
instance.
|
|||
|
|
|||
|
- changes from version 4.50.2:
|
|||
|
* This release improves Hypothesis’s “Falsifying example” output, by
|
|||
|
breaking output across multiple lines where necessary, and by
|
|||
|
removing irrelevant information from the stateful testing output.
|
|||
|
|
|||
|
- changes from version 4.50.1:
|
|||
|
* This patch adds flake8-comprehensions to our linter suite. There
|
|||
|
is no user-visible change - expect perhaps via some strange
|
|||
|
microbenchmarks - but certain parts of the code now have a clear
|
|||
|
and more consistent style.
|
|||
|
|
|||
|
- changes from version 4.50.0:
|
|||
|
* This release fixes some cases where we might previously have
|
|||
|
failed to run the validation logic for some strategies. As a
|
|||
|
result tests which would previously have been silently testing
|
|||
|
significantly less than they should may now start to raise
|
|||
|
InvalidArgument now that these errors are caught.
|
|||
|
|
|||
|
- changes from version 4.49.0:
|
|||
|
* This release significantly improves the data distribution in rule
|
|||
|
based stateful testing <stateful_testing>, by using a technique
|
|||
|
called Swarm Testing (Groce, Alex, et al. “Swarm testing.”
|
|||
|
Proceedings of the 2012 International Symposium on Software
|
|||
|
Testing and Analysis. ACM, 2012.) to select which rules are run in
|
|||
|
any given test case. This should allow it to find many issues that
|
|||
|
it would previously have missed.
|
|||
|
* This change is likely to be especially beneficial for stateful
|
|||
|
tests with large numbers of rules.
|
|||
|
|
|||
|
- changes from version 4.48.1:
|
|||
|
* This release adds some heuristics to test case generation that try
|
|||
|
to ensure that test cases generated early on will be relatively
|
|||
|
small.
|
|||
|
* This fixes a bug introduced in Hypothesis 4.42.0 which would cause
|
|||
|
occasional too_slow failures on some tests.
|
|||
|
|
|||
|
- changes from version 4.48.0:
|
|||
|
* This release revokes the deprecation of find, as we’ve now rebuilt
|
|||
|
it on top of @given, which means it has minimal maintenance burden
|
|||
|
and we’re happy to support it.
|
|||
|
|
|||
|
- changes from version 4.47.5:
|
|||
|
* This release rebuilds find() on top of @given in order to have
|
|||
|
more code in common. It should have minimal user visible effect.
|
|||
|
|
|||
|
- changes from version 4.47.4:
|
|||
|
* This patch removes an internal compatibility shim that we no
|
|||
|
longer need.
|
|||
|
|
|||
|
- changes from version 4.47.3:
|
|||
|
* This patch fixes several typos in our docstrings and comments,
|
|||
|
with no change in behaviour. Thanks to Dmitry Dygalo for
|
|||
|
identifying and fixing them!
|
|||
|
|
|||
|
- changes from version 4.47.2:
|
|||
|
* This release fixes an internal issue where Hypothesis would
|
|||
|
sometimes generate test cases that were above its intended maximum
|
|||
|
size. This would only have happened rarely and probably would not
|
|||
|
have caused major problems when it did.
|
|||
|
* Users of the new targeted property-based testing might see minor
|
|||
|
impact (possibly slightly faster tests and slightly worse target
|
|||
|
scores), but only in the unlikely event that they were hitting
|
|||
|
this problem. Other users should not see any effect at all.
|
|||
|
|
|||
|
- changes from version 4.47.1:
|
|||
|
* This release removes some unused code from the core engine. There
|
|||
|
is no user-visible change.
|
|||
|
|
|||
|
- changes from version 4.47.0:
|
|||
|
* This release commonizes some code between running explicit
|
|||
|
examples and normal test execution. The main user visible impact
|
|||
|
of this is that deadlines are now enforced when running explicit
|
|||
|
examples.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Nov 23 23:59:44 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 4.46.1:
|
|||
|
* This patch ensures that a KeyboardInterrupt received during
|
|||
|
example generation is not treated as a mystery test failure but
|
|||
|
instead propagates to the top level, not recording the interrupted
|
|||
|
generation in the conjecture data tree. Thanks to Anne Archibald
|
|||
|
for identifying and fixing the problem.
|
|||
|
|
|||
|
- changes from version 4.46.0:
|
|||
|
* This release changes the behaviour of floats() when excluding
|
|||
|
signed zeros - floats(max_value=0.0, exclude_max=True) can no
|
|||
|
longer generate -0.0 nor the much rarer floats(min_value=-0.0,
|
|||
|
exclude_min=True) generate +0.0.
|
|||
|
* The correct interaction between signed zeros and exclusive
|
|||
|
endpoints was unclear; we now enforce the invariant that floats()
|
|||
|
will never generate a value equal to an excluded endpoint (issue
|
|||
|
#2201).
|
|||
|
* If you prefer the old behaviour, you can pass
|
|||
|
floats(max_value=-0.0) or floats(min_value=0.0) which is exactly
|
|||
|
equivalent and has not changed. If you had two endpoints equal to
|
|||
|
zero, we recommend clarifying your tests by using just() or
|
|||
|
sampled_from() instead of floats().
|
|||
|
|
|||
|
- changes from version 4.45.1:
|
|||
|
* This patch improves the error message when invalid arguments are
|
|||
|
passed to rule() or invariant() (issue #2149).
|
|||
|
Thanks to Benjamin Palmer for this bugfix!
|
|||
|
|
|||
|
- changes from version 4.45.0:
|
|||
|
* This release supports typing.Final and typing.TypedDict in
|
|||
|
from_type().
|
|||
|
|
|||
|
- changes from version 4.44.5:
|
|||
|
* This patch disables our pytest plugin when running on versions of
|
|||
|
pytest before 4.3, the oldest our plugin supports. Note that at
|
|||
|
time of writing the Pytest developers only support 4.6 and later!
|
|||
|
* Hypothesis tests using @given() work on any test runner, but our
|
|||
|
integrations to e.g. avoid example database collisions when
|
|||
|
combined with @pytest.mark.parametrize eventually drop support for
|
|||
|
obsolete versions.
|
|||
|
|
|||
|
- changes from version 4.44.4:
|
|||
|
* This patch adds some internal comments and clarifications to the
|
|||
|
Hypothesis implementation. There is no user-visible change.
|
|||
|
|
|||
|
- changes from version 4.44.3:
|
|||
|
* This patch avoids importing test runners such as :pypi`pytest`,
|
|||
|
:pypi`unittest2`, or :pypi`nose` solely to access their special
|
|||
|
“skip test” exception types - if the module is not in sys.modules,
|
|||
|
the exception can’t be raised anyway.
|
|||
|
* This fixes a problem where importing an otherwise unused module
|
|||
|
could cause spurious errors due to import-time side effects (and
|
|||
|
possibly -Werror).
|
|||
|
|
|||
|
- changes from version 4.44.2:
|
|||
|
* This release fixes @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.
|
|||
|
|
|||
|
- changes from version 4.44.1:
|
|||
|
* This patch allows Hypothesis to run in environments that do not
|
|||
|
specify a __file__, such as a zipapp (issue #2196).
|
|||
|
|
|||
|
- changes from version 4.44.0:
|
|||
|
* This release adds a gufunc argument to
|
|||
|
mutually_broadcastable_shapes() (issue #2174), which allows us to
|
|||
|
generate shapes which are valid for functions like numpy.matmul
|
|||
|
that require shapes which are not simply broadcastable.
|
|||
|
* Thanks to everyone who has contributed to this feature over the
|
|||
|
last year, and a particular shout-out to Zac Hatfield-Dodds and
|
|||
|
Ryan Soklaski for mutually_broadcastable_shapes() and to Ryan
|
|||
|
Turner for the downstream hypothesis-gufunc project.
|
|||
|
|
|||
|
- changes from version 4.43.9:
|
|||
|
* This patch fixes issue #2108, where the first test using data() to
|
|||
|
draw from characters() or 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.
|
|||
|
|
|||
|
- changes from version 4.43.8:
|
|||
|
* This release ensures that the strategies passed to @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.
|
|||
|
|
|||
|
- changes from version 4.43.7:
|
|||
|
* 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).
|
|||
|
|
|||
|
- changes from version 4.43.6 :
|
|||
|
* This patch refactors width handling in floats(); you may notice
|
|||
|
small performance improvements but the main purpose is to enable
|
|||
|
work on issue #1704 (improving shrinking of bounded floats).
|
|||
|
|
|||
|
- changes from version 4.43.5 :
|
|||
|
* This patch removes an unused internal flag. There is no
|
|||
|
user-visible change.
|
|||
|
|
|||
|
- changes from version 4.43.4:
|
|||
|
* This patch corrects the exception type and error message you get
|
|||
|
if you attempt to use data() to draw from something which is not a
|
|||
|
strategy. This never worked, but the error is more helpful now.
|
|||
|
|
|||
|
- changes from version 4.43.3:
|
|||
|
* We’ve adopted 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.
|
|||
|
|
|||
|
- changes from version 4.43.2:
|
|||
|
* This patch fixes the formatting of some documentation, but there
|
|||
|
is no change to any executed code.
|
|||
|
|
|||
|
- changes from version 4.43.1 :
|
|||
|
* Python 3.8’s new typing.Literal type - see PEP 586 for details -
|
|||
|
is now supported in from_type().
|
|||
|
|
|||
|
- changes from version 4.43.0:
|
|||
|
* This release adds the strategy 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 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).
|
|||
|
* Thanks to Ryan Soklaski, Zac Hatfield-Dodds, and @rdturnermtl who
|
|||
|
contributed to this new feature.
|
|||
|
|
|||
|
- changes from version 4.42.10:
|
|||
|
* This release fixes from_type() when used with bounded or
|
|||
|
constrained 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.
|
|||
|
|
|||
|
- changes from version 4.42.9:
|
|||
|
* This patch ensures that the default value broadcastable_shapes()
|
|||
|
chooses for max_dims is always valid (at most 32), even if you
|
|||
|
pass min_dims=32.
|
|||
|
|
|||
|
- changes from version 4.42.8:
|
|||
|
* 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).
|
|||
|
|
|||
|
- changes from version 4.42.7:
|
|||
|
* This patch makes stateful step printing expand the result of a
|
|||
|
step into multiple variables when you return multiple() (issue
|
|||
|
#2139). Thanks to Joseph Weston for reporting and fixing this bug!
|
|||
|
|
|||
|
- changes from version 4.42.6:
|
|||
|
* 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.
|
|||
|
* Thanks to Robert Knight for this bugfix!
|
|||
|
|
|||
|
- changes from version 4.42.5:
|
|||
|
* This patch corrects some internal documentation. There is no
|
|||
|
user-visible change.
|
|||
|
|
|||
|
- changes from version 4.42.4:
|
|||
|
* This release fixes a bug (issue #2160) where decorators applied
|
|||
|
after @settings and before @given were ignored.
|
|||
|
* Thanks to Tom Milligan for this bugfix!
|
|||
|
|
|||
|
- changes from version 4.42.3:
|
|||
|
* This release updates Hypothesis’s formatting to the new version of
|
|||
|
black, and has absolutely no user visible effect.
|
|||
|
|
|||
|
- changes from version 4.42.2:
|
|||
|
* This release fixes a bug in 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.
|
|||
|
|
|||
|
- changes from version 4.42.1:
|
|||
|
* Python 3.8’s new typing.SupportsIndex type - see PEP 357 for
|
|||
|
details - is now supported in from_type().
|
|||
|
* Thanks to Grigorios Giannakopoulos for the patch!
|
|||
|
|
|||
|
- changes from version 4.42.0:
|
|||
|
* 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 targeted property-based testing 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.
|
|||
|
|
|||
|
- changes from version 4.41.3:
|
|||
|
* This patch is to ensure that our internals remain comprehensible
|
|||
|
to mypy 0.740 - there is no user-visible change.
|
|||
|
|
|||
|
- changes from version 4.41.2:
|
|||
|
* This patch changes some internal hashes to SHA384, to better
|
|||
|
support users subject to FIPS-140. There is no user-visible API
|
|||
|
change.
|
|||
|
* Thanks to Paul Kehrer for this contribution!
|
|||
|
|
|||
|
- changes from version 4.41.1:
|
|||
|
* This release makes --hypothesis-show-statistics much more useful
|
|||
|
for tests using a RuleBasedStateMachine, by simplifying the reprs
|
|||
|
so that events are aggregated correctly.
|
|||
|
|
|||
|
- changes from version 4.41.0:
|
|||
|
* This release upgrades the fixed_dictionaries() strategy to support
|
|||
|
optional keys (issue #1913).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Oct 16 13:13:59 UTC 2019 - Marketa Calabkova <mcalabkova@suse.com>
|
|||
|
|
|||
|
- update to version 4.40.2
|
|||
|
* Type hints improved
|
|||
|
* Performance improved
|
|||
|
* Array indexing improved
|
|||
|
* **experimental** support for targeted property-based testing
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Aug 25 17:57:25 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 4.34.0:
|
|||
|
* The from_type() strategy now knows to look up the subclasses of
|
|||
|
abstract types, which cannot be instantiated directly. This is
|
|||
|
very useful for hypothesmith to support libCST.
|
|||
|
|
|||
|
- changes from version 4.33.1:
|
|||
|
* This patch works around a crash when an incompatible version of
|
|||
|
Numpy is installed under PyPy 5.10 (Python 2.7).
|
|||
|
|
|||
|
- changes from version 4.33.0:
|
|||
|
* This release improves the domains() strategy, as well as the
|
|||
|
urls() and the emails() strategies which use it. These strategies
|
|||
|
now use the full IANA list of Top Level Domains and are correct as
|
|||
|
per RFC 1035. Passing tests using these strategies may now
|
|||
|
fail.Thanks to TechDragon for this improvement.
|
|||
|
|
|||
|
- changes from version 4.32.3 :
|
|||
|
* This patch tidies up the repr of several settings-related objects,
|
|||
|
at runtime and in the documentation, and deprecates the
|
|||
|
undocumented edge case that phases=None was treated like
|
|||
|
phases=tuple(Phase). It also fixes from_lark() with lark 0.7.2 and later.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Aug 4 15:07:54 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 4.32.2:
|
|||
|
* This patch updates some internal comments for mypy 0.720. There is
|
|||
|
no user-visible impact.
|
|||
|
|
|||
|
- changes from version 4.32.1:
|
|||
|
* This release changes how the shrinker represents its progress
|
|||
|
internally. For large generated test cases this should result in
|
|||
|
significantly less memory usage and possibly faster
|
|||
|
shrinking. Small generated test cases may be slightly slower to
|
|||
|
shrink but this shouldn’t be very noticeable.
|
|||
|
|
|||
|
- changes from version 4.32.0:
|
|||
|
* This release makes arrays() more pedantic about elements
|
|||
|
strategies that cannot be exactly represented as array
|
|||
|
elements. In practice, you will see new warnings if you were using
|
|||
|
a float16 or float32 dtype without passing floats() the width=16
|
|||
|
or width=32 arguments respectively.The previous behaviour could
|
|||
|
lead to silent truncation, and thus some elements being equal to
|
|||
|
an explicitly excluded bound (issue #1899).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Jul 28 16:16:49 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 4.31.1:
|
|||
|
* This patch changes an internal use of MD5 to SHA hashes, to better
|
|||
|
support users subject to FIPS-140. There is no user-visible or API
|
|||
|
change.
|
|||
|
|
|||
|
- changes from version 4.31.0 :
|
|||
|
* This release simplifies the logic of the print_blob setting by
|
|||
|
removing the option to set it to PrintSettings.INFER. As a result
|
|||
|
the print_blob setting now takes a single boolean value, and the
|
|||
|
use of PrintSettings is deprecated.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Jul 22 13:00:16 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
|||
|
|
|||
|
- Update to 4.28.2:
|
|||
|
* Various bugfixes and deprecations all around
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Jun 8 23:18:22 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 4.24.3:
|
|||
|
* This patch improves the implementation of an internal wrapper on
|
|||
|
Python 3.8 beta1 (and will break on the alphas; but they’re not
|
|||
|
meant to be stable). On other versions, there is no change at
|
|||
|
all. Thanks to Daniel Hahler for the patch, and Victor Stinner for
|
|||
|
his work on bpo-37032 that made it possible.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Jun 6 09:01:21 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
|
|||
|
|
|||
|
- update to 4.24.2
|
|||
|
* Deprecation messages for functions in hypothesis.extra.django.models
|
|||
|
now explicitly name the deprecated function to make it easier to track down usages.
|
|||
|
* a spurious bug raised when a @st.composite function was passed a keyword-only argument.
|
|||
|
* deprecates GenericStateMachine, in favor of RuleBasedStateMachine.
|
|||
|
* This patch clarifies some error messages when the test function signature
|
|||
|
is incompatible with the arguments to @given, especially when the @settings()
|
|||
|
decorator is also used
|
|||
|
* ixes a minor formatting issue the docstring of from_type()
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue May 14 11:05:16 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
|
|||
|
|
|||
|
- update to 4.23.4
|
|||
|
* Adds a recipe to the docstring of :func:`~hypothesis.strategies.from_type`
|
|||
|
* implements the :func:`~hypothesis.strategies.slices` strategy,
|
|||
|
to generate slices of a length-size sequence.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue May 7 08:58:44 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
|||
|
|
|||
|
- Remove pandas dependency to make ring1 more happy
|
|||
|
- Update to 4.22.0:
|
|||
|
* Various small tweaks only
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon May 6 09:40:28 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
|||
|
|
|||
|
- More love for the tests to make sure we execute and run them
|
|||
|
+ skip/remove the obvious failures that are irelevant
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Apr 30 13:01:05 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
|||
|
|
|||
|
- Update to 4.18.2:
|
|||
|
* This patch makes Hypothesis compatible with the Python 3.8 alpha
|
|||
|
* This release adds the functions() strategy
|
|||
|
* This release refactors stateful rule selection
|
|||
|
* This patch allows Hypothesis to try a few more examples after finding the first bug
|
|||
|
* This release adds the strategy broadcastable_shapes()
|
|||
|
- Make sure the tests are executed (and fail at the moment, needs
|
|||
|
bit more love)
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Apr 13 03:07:02 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 4.16.0:
|
|||
|
* This release allows register_type_strategy() to be used with
|
|||
|
typing.NewType instances. This may be useful to e.g. provide only
|
|||
|
positive integers for from_type(UserId) with a UserId =
|
|||
|
NewType('UserId', int) type.
|
|||
|
|
|||
|
- changes from version 4.15.0:
|
|||
|
* This release supports passing a timedelta as the deadline setting,
|
|||
|
so you no longer have to remember that the number is in
|
|||
|
milliseconds (issue #1900).
|
|||
|
|
|||
|
- changes from version 4.14.7:
|
|||
|
* This patch makes the type annotations on hypothesis.extra.dateutil
|
|||
|
compatible with mypy 0.700.
|
|||
|
|
|||
|
- changes from version 4.14.6:
|
|||
|
* This release fixes a bug introduced in Hypothesis 4.14.3 that
|
|||
|
would sometimes cause sampled_from(...).filter(...) to encounter
|
|||
|
an internal assertion failure when there are three or fewer
|
|||
|
elements, and every element is rejected by the filter.
|
|||
|
|
|||
|
- changes from version 4.14.5:
|
|||
|
* This patch takes the previous efficiency improvements to
|
|||
|
sampled_from(...).filter(...) strategies that reject most
|
|||
|
elements, and generalises them to also apply to
|
|||
|
sampled_from(...).filter(...).filter(...) and longer chains of
|
|||
|
filters.
|
|||
|
|
|||
|
- changes from version 4.14.4:
|
|||
|
* This release fixes a bug that prevented random_module() from
|
|||
|
correctly restoring the previous state of the random module.
|
|||
|
The random state was instead being restored to a temporary
|
|||
|
deterministic state, which accidentally caused subsequent tests to
|
|||
|
see the same random values across multiple test runs.
|
|||
|
|
|||
|
- changes from version 4.14.3:
|
|||
|
* This patch adds an internal special case to make
|
|||
|
sampled_from(...).filter(...) much more efficient when the filter
|
|||
|
rejects most elements (issue #1885).
|
|||
|
|
|||
|
- changes from version 4.14.2:
|
|||
|
* This patch improves the error message if the function f in
|
|||
|
s.flatmap(f) does not return a strategy.
|
|||
|
|
|||
|
- changes from version 4.14.1:
|
|||
|
* 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.
|
|||
|
|
|||
|
- changes from version 4.14.0:
|
|||
|
* This release blocks installation of Hypothesis on Python 3.4,
|
|||
|
which reached its end of life date on 2019-03-18.
|
|||
|
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.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Mar 25 06:25:48 UTC 2019 - John Vandenberg <jayvdb@gmail.com>
|
|||
|
|
|||
|
- Add changes.rst to %doc
|
|||
|
- Update to v4.13.0
|
|||
|
* for changes please see doc/changes.rst or
|
|||
|
https://github.com/HypothesisWorks/hypothesis/blob/master/hypothesis-python/docs/changes.rst
|
|||
|
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Mar 18 08:11:15 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
|
|||
|
|
|||
|
- update to 4.11.7
|
|||
|
* for changes please see doc/changes.rst or
|
|||
|
- https://github.com/HypothesisWorks/hypothesis/blob/master/hypothesis-python/docs/changes.rst
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Dec 28 12:23:28 UTC 2018 - Martin Pluskal <mpluskal@suse.com>
|
|||
|
|
|||
|
- Move name ahead of version in spec file to resolve build issues
|
|||
|
on older distributions
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Dec 8 19:35:13 UTC 2018 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 3.82.5:
|
|||
|
* This patch fixes issue #1667, where passing bounds of Numpy dtype
|
|||
|
int64 to integers() could cause errors on Python 3 due to internal
|
|||
|
rounding.
|
|||
|
|
|||
|
- changes from version 3.82.4:
|
|||
|
* Hypothesis now seeds and resets the global state of np.random for
|
|||
|
each test case, to ensure that tests are reproducible.
|
|||
|
* This matches and complements the existing handling of the random
|
|||
|
module - Numpy simply maintains an independent PRNG for
|
|||
|
performance reasons.
|
|||
|
|
|||
|
- changes from version 3.82.3 :
|
|||
|
* This is a no-op release to add the new Framework :: Hypothesis
|
|||
|
trove classifier to 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 our curated list.
|
|||
|
|
|||
|
- changes from version 3.82.2 :
|
|||
|
* The Hypothesis for Pandas extension is now listed in setup.py, so
|
|||
|
you can pip install hypothesis[pandas].
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Nov 1 22:43:45 UTC 2018 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 3.82.1:
|
|||
|
* This patch fixes from_type() on Python 2 for classes where
|
|||
|
cls.__init__ is object.__init__. Thanks to ccxcz for reporting
|
|||
|
issue #1656.
|
|||
|
|
|||
|
- changes from version 3.82.0:
|
|||
|
* The alphabet argument for 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.
|
|||
|
|
|||
|
- changes from version 3.81.0:
|
|||
|
* GenericStateMachine and RuleBasedStateMachine now raise an
|
|||
|
explicit error when instances of 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.
|
|||
|
|
|||
|
- changes from version 3.80.0:
|
|||
|
* Since version 3.68.0, 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 (issue #1591).
|
|||
|
|
|||
|
- changes from version 3.79.4:
|
|||
|
* Tests using @given now shrink errors raised from pytest helper
|
|||
|
functions, instead of reporting the first example found.
|
|||
|
This was previously fixed in version 3.56.0, but only for stateful
|
|||
|
testing.
|
|||
|
|
|||
|
- changes from version 3.79.3:
|
|||
|
* Traceback elision is now disabled on Python 2, to avoid an
|
|||
|
import-time SyntaxError under Python < 2.7.9 (Python: bpo-21591,
|
|||
|
Hypothesis 3.79.2: issue #1648).
|
|||
|
* We encourage all users to upgrade to Python 3 before the end of
|
|||
|
2019.
|
|||
|
|
|||
|
- changes from version 3.79.2:
|
|||
|
* 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 (issue #848).
|
|||
|
In the example test (see pull request #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 verbosity to debug.
|
|||
|
|
|||
|
- changes from version 3.79.1:
|
|||
|
* The abstract number classes Number, Complex, Real, Rational, and
|
|||
|
Integral are now supported by the from_type()
|
|||
|
strategy. Previously, you would have to use
|
|||
|
register_type_strategy() before they could be resolved (issue
|
|||
|
#1636)
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Oct 20 15:34:34 UTC 2018 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 3.79.0:
|
|||
|
* 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.Thanks to Bex
|
|||
|
Dunn for writing this patch at the PyCon Australia sprints!
|
|||
|
* The pytest header now correctly reports the current profile if
|
|||
|
--hypothesis-profile has been used. Thanks to Mathieu Paturel for t
|
|||
|
he contribution at the Canberra Python Hacktoberfest.
|
|||
|
|
|||
|
- changes from version 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)
|
|||
|
|
|||
|
- changes from version 3.77.0:
|
|||
|
* This minor release adds functionality to settings allowing it to
|
|||
|
be used as a decorator on RuleBasedStateMachine and
|
|||
|
GenericStateMachine.
|
|||
|
|
|||
|
- changes from version 3.76.1:
|
|||
|
* This patch fixes some warnings added by recent releases of
|
|||
|
pydocstyle and mypy.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Oct 14 15:26:36 UTC 2018 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 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.
|
|||
|
|
|||
|
- changes from version 3.75.4:
|
|||
|
* This patch adds more internal comments to the core engine’s
|
|||
|
sequence-length shrinker. There should be no user-visible change.
|
|||
|
|
|||
|
- changes from version 3.75.3:
|
|||
|
* This patch adds additional comments to some of the core engine’s
|
|||
|
internal data structures. There is no user-visible change.
|
|||
|
|
|||
|
- changes from version 3.75.2:
|
|||
|
* This patch avoids caching a trivial case, fixing issue #493.
|
|||
|
|
|||
|
- changes from version 3.75.1:
|
|||
|
* This patch fixes a broken link in a docstring. Thanks to Benjamin
|
|||
|
Lee for this contribution!
|
|||
|
|
|||
|
- changes from version 3.75.0:
|
|||
|
* This release deprecates the use of min_size=None, setting the
|
|||
|
default min_size to 0 (:issue: 1618).
|
|||
|
|
|||
|
- changes from version 3.74.3:
|
|||
|
* This patch makes some small internal changes to comply with a new
|
|||
|
lint setting in the build. There should be no user-visible change.
|
|||
|
|
|||
|
- changes from version 3.74.2:
|
|||
|
* 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.
|
|||
|
|
|||
|
- changes from version 3.74.1:
|
|||
|
* This patch fixes some broken formatting and links in the
|
|||
|
documentation.
|
|||
|
|
|||
|
- changes from version 3.74.0:
|
|||
|
* This release checks that the value of the print_blob setting is a
|
|||
|
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 PrintSettings or a boolean is
|
|||
|
now an error.
|
|||
|
|
|||
|
- changes from version 3.73.5:
|
|||
|
* 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
|
|||
|
|
|||
|
- changes from version 3.73.4:
|
|||
|
* This patch ensures that Hypothesis deprecation warnings display
|
|||
|
the code that emitted them when you’re not running in -Werror mode
|
|||
|
(issue #652).
|
|||
|
|
|||
|
- changes from version 3.73.3:
|
|||
|
* Tracebacks involving @composite are now slightly shorter due to
|
|||
|
some internal refactoring.
|
|||
|
|
|||
|
- changes from version 3.73.2:
|
|||
|
* This patch fixes errors in the internal comments for one of the
|
|||
|
shrinker passes. There is no user-visible change.
|
|||
|
|
|||
|
- changes from version 3.73.1:
|
|||
|
* This patch substantially improves the distribution of data
|
|||
|
generated with recursive(), and fixes a rare internal error (issue
|
|||
|
#1502).
|
|||
|
|
|||
|
- changes from version 3.73.0 :
|
|||
|
* This release adds the fulfill() function, which is designed for
|
|||
|
testing code that uses dpcontracts 0.4 or later for input
|
|||
|
validation. This provides some syntactic sugar around use of
|
|||
|
assume(), to automatically filter out and retry calls that cause a
|
|||
|
precondition check to fail (issue #1474).
|
|||
|
|
|||
|
- changes from version 3.72.0 :
|
|||
|
* This release makes setting attributes of the 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 settings profiles.
|
|||
|
|
|||
|
- changes from version 3.71.11:
|
|||
|
* This patch factors out some common code in the shrinker for
|
|||
|
iterating over pairs of data blocks. There should be no
|
|||
|
user-visible change.
|
|||
|
|
|||
|
- changes from version 3.71.10 :
|
|||
|
* This patch allows from_type() to handle the empty tuple type,
|
|||
|
typing.Tuple[()].
|
|||
|
|
|||
|
- changes from version 3.71.9 :
|
|||
|
* This patch updates some internal comments for mypy. There is no
|
|||
|
user-visible effect, even for Mypy users.
|
|||
|
|
|||
|
- changes from version 3.71.8:
|
|||
|
* This patch fixes a rare bug that would cause a particular shrinker
|
|||
|
pass to raise an IndexError, if a shrink improvement changed the
|
|||
|
underlying data in an unexpected way.
|
|||
|
|
|||
|
- changes from version 3.71.7:
|
|||
|
* This release fixes the broken cross-references in our docs, and
|
|||
|
adds a CI check so we don’t add new ones.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Sep 16 15:37:43 UTC 2018 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- update to version 3.71.6:
|
|||
|
* This patch fixes two bugs (issue #944 and issue #1521), where
|
|||
|
messages about @seed <hypothesis.seed() did not check the current
|
|||
|
verbosity setting, and the wrong settings were active while
|
|||
|
executing explicit examples.
|
|||
|
|
|||
|
- changes from version 3.71.5:
|
|||
|
* This patch fixes a DeprecationWarning added in Python 3.8 (issue
|
|||
|
#1576).
|
|||
|
* Thanks to tirkarthi for this contribution!
|
|||
|
|
|||
|
- changes from version 3.71.4:
|
|||
|
* This is a no-op release, which implements automatic DOI minting
|
|||
|
and code archival of Hypothesis via Zenodo. Thanks to CERN and the
|
|||
|
EU Horizon 2020 programme for providing this service!
|
|||
|
* Check our CITATION file for details, or head right on over to
|
|||
|
doi.org/10.5281/zenodo.1412597
|
|||
|
|
|||
|
- changes from version 3.71.3:
|
|||
|
* This release adds the test name to some deprecation warnings, for
|
|||
|
easier debugging.
|
|||
|
* Thanks to Sanyam Khurana for the patch!
|
|||
|
|
|||
|
- changes from version 3.71.2:
|
|||
|
* This release makes Hypothesis’s memory usage substantially smaller
|
|||
|
for tests with many examples, by bounding the number of past
|
|||
|
examples it keeps around.
|
|||
|
* You will not see much difference unless you are running tests with
|
|||
|
max_examples set to well over 1000, but if you do have such tests
|
|||
|
then you should see memory usage mostly plateau where previously
|
|||
|
it would have grown linearly with time.
|
|||
|
|
|||
|
- changes from version 3.71.1:
|
|||
|
* This patch adds internal comments to some tree traversals in the
|
|||
|
core engine. There is no user-visible change.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Sep 9 22:39:31 CEST 2018 - Matěj Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Add multibuild to allow running tests.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Sep 8 19:08:09 UTC 2018 - Arun Persaud <arun@gmx.de>
|
|||
|
|
|||
|
- specfile:
|
|||
|
* updated pytest version, specified pytz version (from setup.py)
|
|||
|
|
|||
|
- update to version 3.71.0:
|
|||
|
* many changes, see https://hypothesis.readthedocs.io/en/latest/changes.html
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Sep 5 10:02:37 UTC 2018 - Matěj Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Precompile Python files to avoid troubles with mtime and magic values.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Sep 4 16:01:22 UTC 2018 - Matěj Cepl <mcepl@suse.com>
|
|||
|
|
|||
|
- Clean up SPEC
|
|||
|
- Add %check section, but make it disabled per default (circular
|
|||
|
dependency on pytest)
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Aug 31 11:55:29 UTC 2018 - Tomáš Chvátal <tchvatal@suse.com>
|
|||
|
|
|||
|
- Drop the pytest-xdist dependency to build on Leap 42.3, as it
|
|||
|
does not run tests it was quite pointless
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Jul 23 05:25:06 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.66.6:
|
|||
|
* This patch ensures that Hypothesis fully supports Python 3.7, by
|
|||
|
upgrading from_type() (issue #1264) and fixing some minor issues
|
|||
|
in our test suite (issue #1148).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Jul 22 18:47:08 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.66.5:
|
|||
|
* This patch fixes the online docs for various extras, by ensuring
|
|||
|
that their dependencies are installed on readthedocs.io (issue
|
|||
|
#1326).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Jul 20 15:28:09 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.66.4:
|
|||
|
* This release improves the shrinker’s ability to reorder examples.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Jul 12 15:59:06 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.66.1:
|
|||
|
* This patch fixes a rare bug where an incorrect percentage drawtime
|
|||
|
could be displayed for a test, when the system clock was changed
|
|||
|
during a test running under Python 2 (we use time.monotonic()
|
|||
|
where it is available to avoid such problems). It also fixes a
|
|||
|
possible zero-division error that can occur when the underlying C
|
|||
|
library double-rounds an intermediate value in math.fsum() and
|
|||
|
gets the least significant bit wrong.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Jul 7 17:11:59 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.66.0:
|
|||
|
* This release improves validation of the alphabet argument to the
|
|||
|
text() strategy. The following misuses are now deprecated, and
|
|||
|
will be an error in a future version:
|
|||
|
+ passing an unordered collection (such as set('abc')), which
|
|||
|
violates invariants about shrinking and reproducibility
|
|||
|
+ passing an alphabet sequence with elements that are not strings
|
|||
|
+ passing an alphabet sequence with elements that are not of
|
|||
|
length one, which violates any size constraints that may apply
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Jul 6 11:58:50 UTC 2018 - dmueller@suse.com
|
|||
|
|
|||
|
- remove redundant pythons buildrequire
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Jul 1 17:47:50 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- specfile:
|
|||
|
* be more specific for %{python_sitelib} in %files
|
|||
|
|
|||
|
- update to version 3.65.0:
|
|||
|
* This release deprecates the max_shrinks setting in favor of an
|
|||
|
internal heuristic. If you need to avoid shrinking examples, use
|
|||
|
the phases setting instead. (issue #1235)
|
|||
|
|
|||
|
- changes from version 3.64.2:
|
|||
|
* This release fixes a bug where an internal assertion error could
|
|||
|
sometimes be triggered while shrinking a failing test.
|
|||
|
|
|||
|
- changes from version 3.64.1:
|
|||
|
* This patch fixes type-checking errors in our vendored
|
|||
|
prety-printer, which were ignored by our mypy config but visible
|
|||
|
for anyone else (whoops). Thanks to Pi Delport for reporting issue
|
|||
|
#1359 so promptly.
|
|||
|
|
|||
|
- changes from version 3.64.0:
|
|||
|
* This release adds an interface which can be used to insert a
|
|||
|
wrapper between the original test function and @given (issue
|
|||
|
#1257). This will be particularly useful for test runner
|
|||
|
extensions such as pytest-trio, but is not recommended for direct
|
|||
|
use by other users of Hypothesis.
|
|||
|
|
|||
|
- changes from version 3.63.0:
|
|||
|
* This release adds a new mechanism to infer strategies for classes
|
|||
|
defined using attrs, based on the the type, converter, or
|
|||
|
validator of each attribute. This inference is now built in to
|
|||
|
builds() and from_type().
|
|||
|
* On Python 2, from_type() no longer generates instances of int when
|
|||
|
passed long, or vice-versa.
|
|||
|
|
|||
|
- changes from version 3.62.0:
|
|||
|
* This release adds PEP 484 type hints to Hypothesis on a
|
|||
|
provisional basis, using the comment-based syntax for Python 2
|
|||
|
compatibility. You can read more about our type hints here.
|
|||
|
* It also adds the py.typed marker specified in PEP 561. After you
|
|||
|
pip install hypothesis, mypy 0.590 or later will therefore
|
|||
|
type-check your use of our public interface!
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Jun 24 15:40:53 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- specfile:
|
|||
|
* use %{version} in source
|
|||
|
|
|||
|
- update to version 3.61.0:
|
|||
|
* This release deprecates the use of settings as a context manager,
|
|||
|
the use of which is somewhat ambiguous.Users should define
|
|||
|
settings with global state or with the @settings(...) decorator.
|
|||
|
|
|||
|
- changes from version 3.60.1:
|
|||
|
* Fixed a bug in generating an instance of a Django model from a
|
|||
|
strategy where the primary key is generated as part of the
|
|||
|
strategy. See details here.
|
|||
|
|
|||
|
- changes from version 3.60.0:
|
|||
|
* This release add initialize decorator for stateful testing
|
|||
|
(originally discussed in issue #1216). initialize act as a special
|
|||
|
rule that is only called once, and all initialize rules are
|
|||
|
guaranteed to be called before any normal rule is called.
|
|||
|
|
|||
|
- changes from version 3.59.3:
|
|||
|
* This is a no-op release to take into account some changes to the
|
|||
|
release process. It should have no user visible effect.
|
|||
|
|
|||
|
- changes from version 3.59.2:
|
|||
|
* This adds support for partially sorting examples which cannot be
|
|||
|
fully sorted. For example, [5, 4, 3, 2, 1, 0] with a constraint
|
|||
|
that the first element needs to be larger than the last becomes
|
|||
|
[1, 2, 3, 4, 5, 0].
|
|||
|
|
|||
|
- changes from version 3.59.1:
|
|||
|
* This patch uses random.getstate() and random.setstate() to restore
|
|||
|
the PRNG state after @given runs deterministic tests. Without
|
|||
|
restoring state, you might have noticed problems such as issue
|
|||
|
#1266. The fix also applies to stateful testing (issue #702).
|
|||
|
|
|||
|
- changes from version 3.59.0:
|
|||
|
* This release adds the emails() strategy, which generates unicode
|
|||
|
strings representing an email address.
|
|||
|
|
|||
|
- changes from version 3.58.1:
|
|||
|
* This improves the shrinker. It can now reorder examples: 3 1 2
|
|||
|
becomes 1 2 3.
|
|||
|
|
|||
|
- changes from version 3.58.0:
|
|||
|
* This adds a new extra timezones() strategy that generates dateutil
|
|||
|
timezones. Depends on python-dateutil.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Jun 4 19:27:19 UTC 2018 - toddrme2178@gmail.com
|
|||
|
|
|||
|
- Use github source archive as recommended by upstream.
|
|||
|
- Remove unneeded python-hypothesis-build.patch
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu May 31 02:56:55 UTC 2018 - toddrme2178@gmail.com
|
|||
|
|
|||
|
- Update to 3.57.0
|
|||
|
* Using an unordered collection with the :func:`~hypothesis.strategies.permutations`
|
|||
|
strategy has been deprecated because the order in which e.g. a set shrinks is
|
|||
|
arbitrary. This may cause different results between runs.
|
|||
|
- Update to 3.56.10 - 2018-05-16
|
|||
|
* This release makes :obj:`~hypothesis.settings.define_setting`
|
|||
|
aprivate method, which has the effect of hiding it from the
|
|||
|
documentation.
|
|||
|
- Update to 3.56.9
|
|||
|
* This is another release with no functionality changes as part of changes to
|
|||
|
Hypothesis's new release tagging scheme.
|
|||
|
- Update to 3.56.8
|
|||
|
* This is a release with no functionality changes that moves Hypothesis over to
|
|||
|
anew release tagging scheme.
|
|||
|
- Update to 3.56.7
|
|||
|
* This release provides a performance improvement for most tests, but in
|
|||
|
particular users of ``sampled_from`` who don't have numpy installed should see
|
|||
|
asignificant performance improvement.
|
|||
|
- Update to 3.56.6
|
|||
|
* This patch contains further internal work to support Mypy.
|
|||
|
There are no user-visible changes... yet.
|
|||
|
- Update to 3.56.5
|
|||
|
* This patch contains some internal refactoring to run :pypi:`mypy` in CI.
|
|||
|
There are no user-visible changes.
|
|||
|
- Update to 3.56.4
|
|||
|
* This release involves some very minor internal clean up and should have no
|
|||
|
user visible effect at all.
|
|||
|
- Update to 3.56.3
|
|||
|
* This release fixes a problem introduced in :ref:`3.56.0 <v3.56.0>` where
|
|||
|
setting the hypothesis home directory (through currently undocumented
|
|||
|
means) would no longer result in the default database location living
|
|||
|
in the new home directory.
|
|||
|
- Update to 3.56.2
|
|||
|
* This release fixes a problem introduced in :ref:`3.56.0 <v3.56.0>` where
|
|||
|
setting :obj:`~hypothesis.settings.max_examples` to ``1`` would result in tests
|
|||
|
failing with ``Unsatisfiable``. This problem could also occur in other harder
|
|||
|
to trigger circumstances (e.g. by setting it to a low value, having a hard to
|
|||
|
satisfy assumption, and disabling health checks).
|
|||
|
- Update to 3.56.1
|
|||
|
* This release fixes a problem that was introduced in :ref:`3.56.0 <v3.56.0>`:
|
|||
|
Use of the :envvar:`HYPOTHESIS_VERBOSITY_LEVEL` environment variable was, rather
|
|||
|
than deprecated, actually broken due to being read before various setup
|
|||
|
the deprecation path needed was done. It now works correctly (and emits a
|
|||
|
deprecation warning).
|
|||
|
- Update to 3.56.0
|
|||
|
* This release deprecates several redundant or internally oriented
|
|||
|
:class:`~hypothesis.settings`, working towards an orthogonal set of
|
|||
|
configuration options that are widely useful *without* requiring any
|
|||
|
knowledge of our internals (:issue:`535`).
|
|||
|
+ Deprecated settings that no longer have any effect are no longer
|
|||
|
shown in the ``__repr__`` unless set to a non-default value.
|
|||
|
+ :obj:`~hypothesis.settings.perform_health_check` is deprecated, as it
|
|||
|
duplicates :obj:`~hypothesis.settings.suppress_health_check`.
|
|||
|
+ :obj:`~hypothesis.settings.max_iterations` is deprecated and disabled,
|
|||
|
because we can usually get better behaviour from an internal heuristic
|
|||
|
than a user-controlled setting.
|
|||
|
+ :obj:`~hypothesis.settings.min_satisfying_examples` is deprecated and
|
|||
|
disabled, due to overlap with the
|
|||
|
:obj:`~hypothesis.settings.HealthCheck.filter_too_much` healthcheck
|
|||
|
and poor interaction with :obj:`~hypothesis.settings.max_examples`.
|
|||
|
+ :envvar:`HYPOTHESIS_VERBOSITY_LEVEL` is now deprecated. Set
|
|||
|
:obj:`~hypothesis.settings.verbosity` through the profile system instead.
|
|||
|
+ Examples tried by :func:`~hypothesis.find` are now reported at ``debug``
|
|||
|
verbosity level (as well as ``verbose`` level).
|
|||
|
- Update to 3.55.6
|
|||
|
* This release fixes a somewhat obscure condition (:issue:`1230`) under which you
|
|||
|
could occasionally see a failing test trigger an assertion error inside
|
|||
|
Hypothesis instead of failing normally.
|
|||
|
- Update to 3.55.5
|
|||
|
* This patch fixes one possible cause of :issue:`966`. When running
|
|||
|
Python 2 with hash randomisation, passing a :obj:`python:bytes` object
|
|||
|
to :func:`python:random.seed` would use ``version=1``, which broke
|
|||
|
:obj:`~hypothesis.settings.derandomize` (because the seed depended on
|
|||
|
arandomised hash). If :obj:`~hypothesis.settings.derandomize` is
|
|||
|
*still* nondeterministic for you, please open an issue.
|
|||
|
- Update to 3.55.4
|
|||
|
* This patch makes a variety of minor improvements to the documentation,
|
|||
|
and improves a few validation messages for invalid inputs.
|
|||
|
- Update to 3.55.3
|
|||
|
* This release updates the URL metadata associated with the PyPI package (again).
|
|||
|
It has no other user visible effects.
|
|||
|
- Update to 3.55.2
|
|||
|
* This release updates the URL metadata associated with the PyPI package.
|
|||
|
It has no other user visible effects.
|
|||
|
- Update to 3.55.1
|
|||
|
* This patch relaxes constraints on the expected values returned
|
|||
|
by the standard library function :func:`hypot` and the internal
|
|||
|
helper function :func:`~hypotheses.internal.cathetus`, this to
|
|||
|
fix near-exact test-failures on some 32-bit systems.
|
|||
|
- Update to 3.55.0
|
|||
|
* This release includes several improvements to the handling of the
|
|||
|
:obj:`~hypothesis.settings.database` setting.
|
|||
|
+ The :obj:`~hypothesis.settings.database_file` setting was a historical
|
|||
|
artefact, and you should just use :obj:`~hypothesis.settings.database`
|
|||
|
directly.
|
|||
|
+ The :envvar:`HYPOTHESIS_DATABASE_FILE` environment variable is
|
|||
|
deprecated, in favor of :meth:`~hypothesis.settings.load_profile` and
|
|||
|
the :obj:`~hypothesis.settings.database` setting.
|
|||
|
+ If you have not configured the example database at all and the default
|
|||
|
location is not usable (due to e.g. permissions issues), Hypothesis
|
|||
|
will fall back to an in-memory database. This is not persisted between
|
|||
|
sessions, but means that the defaults work on read-only filesystems.
|
|||
|
- Update to 3.54.0
|
|||
|
* This release improves the :func:`~hypotheses.strategies.complex_numbers`
|
|||
|
strategy, which now supports ``min_magnitude`` and ``max_magnitude``
|
|||
|
arguments, along with ``allow_nan`` and ``allow_infinity`` like for
|
|||
|
:func:`~hypotheses.strategies.floats`.
|
|||
|
Thanks to J.J. Green for this feature.
|
|||
|
- Update to 3.53.0
|
|||
|
* This release removes support for Django 1.8, which reached end of life on
|
|||
|
2018-04-01. You can see Django's release and support schedule
|
|||
|
`on the Django Project website <https://www.djangoproject.com/download/#supported-versions>`_.
|
|||
|
- Update to 3.52.3
|
|||
|
* This patch fixes the :obj:`~hypothesis.settings.min_satisfying_examples` settings
|
|||
|
documentation, by explaining that example shrinking is tracked at the level
|
|||
|
of the underlying bytestream rather than the output value.
|
|||
|
* The output from :func:`~hypothesis.find` in verbose mode has also been
|
|||
|
adjusted - see :ref:`the example session <verbose-output>` - to avoid
|
|||
|
duplicating lines when the example repr is constant, even if the underlying
|
|||
|
representation has been shrunken.
|
|||
|
- Update to 3.52.2
|
|||
|
* This release improves the output of failures with
|
|||
|
:ref:`rule based stateful testing <rulebasedstateful>` in two ways:
|
|||
|
The output from it is now usually valid Python code.
|
|||
|
When the same value has two different names because it belongs to two different
|
|||
|
bundles, it will now display with the name associated with the correct bundle
|
|||
|
for a rule argument where it is used.
|
|||
|
- Update to 3.52.1
|
|||
|
* This release improves the behaviour of :doc:`stateful testing <stateful>`
|
|||
|
in two ways:
|
|||
|
Previously some runs would run no steps (:issue:`376`). This should no longer
|
|||
|
happen.
|
|||
|
RuleBasedStateMachine tests which used bundles extensively would often shrink
|
|||
|
terribly. This should now be significantly improved, though there is likely
|
|||
|
a lot more room for improvement.
|
|||
|
* This release also involves a low level change to how ranges of integers are
|
|||
|
handles which may result in other improvements to shrink quality in some cases.
|
|||
|
- Update to 3.52.0
|
|||
|
* This release deprecates use of :func:`@settings(...) <hypothesis.settings>`
|
|||
|
as a decorator, on functions or methods that are not also decorated with
|
|||
|
:func:`@given <hypothesis.given>`. You can still apply these decorators
|
|||
|
in any order, though you should only do so once each.
|
|||
|
* Applying :func:`@given <hypothesis.given>` twice was already deprecated, and
|
|||
|
applying :func:`@settings(...) <hypothesis.settings>` twice is deprecated in
|
|||
|
this release and will become an error in a future version. Neither could ever
|
|||
|
be used twice to good effect.
|
|||
|
* Using :func:`@settings(...) <hypothesis.settings>` as the sole decorator on
|
|||
|
atest is completely pointless, so this common usage error will become an
|
|||
|
error in a future version of Hypothesis.
|
|||
|
- Update to 3.51.0
|
|||
|
* This release deprecates the ``average_size`` argument to
|
|||
|
:func:`~hypothesis.strategies.lists` and other collection strategies.
|
|||
|
You should simply delete it wherever it was used in your tests, as it
|
|||
|
no longer has any effect.
|
|||
|
In early versions of Hypothesis, the ``average_size`` argument was treated
|
|||
|
as a hint about the distribution of examples from a strategy. Subsequent
|
|||
|
improvements to the conceptual model and the engine for generating and
|
|||
|
shrinking examples mean it is more effective to simply describe what
|
|||
|
constitutes a valid example, and let our internals handle the distribution.
|
|||
|
- Update to 3.50.3
|
|||
|
* This patch contains some internal refactoring so that we can run
|
|||
|
with warnings as errors in CI.
|
|||
|
- Update to 3.50.2
|
|||
|
* This has no user-visible changes except one slight formatting change to one docstring, to avoid a deprecation warning.
|
|||
|
- Update to 3.50.1
|
|||
|
* This patch fixes an internal error introduced in :ref:`3.48.0 <v3.48.0>`, where a check
|
|||
|
for the Django test runner would expose import-time errors in Django
|
|||
|
configuration (:issue:`1167`).
|
|||
|
- Update to 3.50.0
|
|||
|
* This release improves validation of numeric bounds for some strategies.
|
|||
|
+ :func:`~hypothesis.strategies.integers` and :func:`~hypothesis.strategies.floats`
|
|||
|
now raise ``InvalidArgument`` if passed a ``min_value`` or ``max_value``
|
|||
|
which is not an instance of :class:`~python:numbers.Real`, instead of
|
|||
|
various internal errors.
|
|||
|
+ :func:`~hypothesis.strategies.floats` now converts its bounding values to
|
|||
|
the nearest float above or below the min or max bound respectively, instead
|
|||
|
of just casting to float. The old behaviour was incorrect in that you could
|
|||
|
generate ``float(min_value)``, even when this was less than ``min_value``
|
|||
|
itself (possible with eg. fractions).
|
|||
|
+ When both bounds are provided to :func:`~hypothesis.strategies.floats` but
|
|||
|
there are no floats in the interval, such as ``[(2**54)+1 .. (2**55)-1]``,
|
|||
|
InvalidArgument is raised.
|
|||
|
+ :func:`~hypothesis.strategies.decimals` gives a more useful error message
|
|||
|
if passed a string that cannot be converted to :class:`~python:decimal.Decimal`
|
|||
|
in a context where this error is not trapped.
|
|||
|
Code that previously **seemed** to work may be explicitly broken if there
|
|||
|
were no floats between ``min_value`` and ``max_value`` (only possible with
|
|||
|
non-float bounds), or if a bound was not a :class:`~python:numbers.Real`
|
|||
|
number but still allowed in :obj:`python:math.isnan` (some custom classes
|
|||
|
with a ``__float__`` method).
|
|||
|
- Update to 3.49.1
|
|||
|
* This patch fixes our tests for Numpy dtype strategies on big-endian platforms,
|
|||
|
where the strategy behaved correctly but the test assumed that the native byte
|
|||
|
order was little-endian.
|
|||
|
There is no user impact unless you are running our test suite on big-endian
|
|||
|
platforms. Thanks to Graham Inggs for reporting :issue:`1164`.
|
|||
|
- Update to 3.49.0
|
|||
|
* This release deprecates passing ``elements=None`` to collection strategies,
|
|||
|
such as :func:`~hypothesis.strategies.lists`.
|
|||
|
Requiring ``lists(nothing())`` or ``builds(list)`` instead of ``lists()``
|
|||
|
means slightly more typing, but also improves the consistency and
|
|||
|
discoverability of our API - as well as showing how to compose or
|
|||
|
construct strategies in ways that still work in more complex situations.
|
|||
|
Passing a nonzero max_size to a collection strategy where the elements
|
|||
|
strategy contains no values is now deprecated, and will be an error in a
|
|||
|
future version. The equivalent with ``elements=None`` is already an error.
|
|||
|
- Update to 3.48.1
|
|||
|
* This patch will minimize examples that would come out non-minimal in previous versions. Thanks to Kyle Reeve for this patch.
|
|||
|
- Update to 3.48.0
|
|||
|
* This release improves some "unhappy paths" when using Hypothesis
|
|||
|
with the standard library :mod:`python:unittest` module:
|
|||
|
+ Applying :func:`@given <hypothesis.given>` to a non-test method which is
|
|||
|
overridden from :class:`python:unittest.TestCase`, such as ``setUp``,
|
|||
|
raises :attr:`a new health check <hypothesis.settings.not_a_test_method>`.
|
|||
|
(:issue:`991`)
|
|||
|
+ Using :meth:`~python:unittest.TestCase.subTest` within a test decorated
|
|||
|
with :func:`@given <hypothesis.given>` would leak intermediate results
|
|||
|
when tests were run under the :mod:`python:unittest` test runner.
|
|||
|
Individual reporting of failing subtests is now disabled during a test
|
|||
|
using :func:`@given <hypothesis.given>`. (:issue:`1071`)
|
|||
|
+ :func:`@given <hypothesis.given>` is still not a class decorator, but the
|
|||
|
error message if you try using it on a class has been improved.
|
|||
|
As a related improvement, using :class:`django:django.test.TestCase` with
|
|||
|
:func:`@given <hypothesis.given>` instead of
|
|||
|
:class:`hypothesis.extra.django.TestCase` raises an explicit error instead
|
|||
|
of running all examples in a single database transaction.
|
|||
|
- Update to 3.47.0
|
|||
|
* :obj:`~hypothesis.settings.register_profile` now accepts keyword arguments
|
|||
|
for specific settings, and the parent settings object is now optional.
|
|||
|
Using a ``name`` for a registered profile which is not a string was never
|
|||
|
suggested, but it is now also deprecated and will eventually be an error.
|
|||
|
- Update to 3.46.2
|
|||
|
* This release removes an unnecessary branch from the code, and has no user-visible impact.
|
|||
|
- Update to 3.46.1
|
|||
|
* This changes only the formatting of our docstrings and should have no user-visible effects.
|
|||
|
- Update to 3.46.0
|
|||
|
* :func:`~hypothesis.strategies.characters` has improved docs about
|
|||
|
what arguments are valid, and additional validation logic to raise a
|
|||
|
clear error early (instead of e.g. silently ignoring a bad argument).
|
|||
|
Categories may be specified as the Unicode 'general category'
|
|||
|
(eg ``u'Nd'``), or as the 'major category' (eg ``[u'N', u'Lu']``
|
|||
|
is equivalent to ``[u'Nd', u'Nl', u'No', u'Lu']``).
|
|||
|
* In previous versions, general categories were supported and all other
|
|||
|
input was silently ignored. Now, major categories are supported in
|
|||
|
addition to general categories (which may change the behaviour of some
|
|||
|
existing code), and all other input is deprecated.
|
|||
|
- Update to 3.45.5
|
|||
|
* This patch improves strategy inference in :mod:`hypothesis.extra.django`
|
|||
|
to account for some validators in addition to field type - see
|
|||
|
:issue:`1116` for ongoing work in this space.
|
|||
|
Specifically, if a :class:`~django:django.db.models.CharField` or
|
|||
|
:class:`~django:django.db.models.TextField` has an attached
|
|||
|
:class:`~django:django.core.validators.RegexValidator`, we now use
|
|||
|
:func:`~hypothesis.strategies.from_regex` instead of
|
|||
|
:func:`~hypothesis.strategies.text` as the underlying strategy.
|
|||
|
This allows us to generate examples of the default
|
|||
|
:class:`~django:django.contrib.auth.models.User` model, closing :issue:`1112`.
|
|||
|
- Update to 3.45.4
|
|||
|
* This patch improves some internal debugging information, fixes
|
|||
|
atypo in a validation error message, and expands the documentation
|
|||
|
for new contributors.
|
|||
|
- Add license file
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Mar 6 15:45:20 UTC 2018 - aplanas@suse.com
|
|||
|
|
|||
|
- Allows Recommends and Suggest in Fedora
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Mar 2 09:58:08 UTC 2018 - chris@computersalat.de
|
|||
|
|
|||
|
- fix deps for setuptools
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Feb 27 17:36:35 UTC 2018 - aplanas@suse.com
|
|||
|
|
|||
|
- Recommends only for SUSE
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Feb 23 20:19:52 UTC 2018 - tbechtold@suse.com
|
|||
|
|
|||
|
update to version 3.45.3
|
|||
|
* Bump version to 3.44.26 and update changelog
|
|||
|
* That doesn't need to be conditional in the shrinker
|
|||
|
* Add release notes
|
|||
|
* Wrong backticks
|
|||
|
* Response to review
|
|||
|
* Switch over to an adaptive greedy algorithm
|
|||
|
* Clarify dependencies on enum34, Django
|
|||
|
* don't try to assign to *args
|
|||
|
* Don't split expression over multiple lines needlessly
|
|||
|
* define labels in top-level constants since they're expensive-ish to compute
|
|||
|
* Change how we track whether a block is shrinking
|
|||
|
* Add tests for zig zagging behaviour
|
|||
|
* Update isort from 4.2.15 to 4.3.2
|
|||
|
* Add a section about deferring errors
|
|||
|
* specify target and args for build() together as *target_and_args
|
|||
|
* Fix typo
|
|||
|
* Bump version to 3.44.17 and update changelog
|
|||
|
* Add flaky annotation to test_can_generate_interval_endpoints
|
|||
|
* Add notion of labels to strategies
|
|||
|
* Bump version to 3.44.25 and update changelog
|
|||
|
* Update pytest from 3.3.2 to 3.4.0
|
|||
|
* address more code review comments
|
|||
|
* Bump version to 3.44.19 and update changelog
|
|||
|
* Remove just and of course
|
|||
|
* Bump version to 3.45.2 and update changelog
|
|||
|
* don't refer to hypothesis_internal_target from bad implementation
|
|||
|
* Add a release note for the source changes
|
|||
|
* Add quality tests on Python 2
|
|||
|
* Update safety from 1.6.1 to 1.7.0
|
|||
|
* Fix typo in docstring
|
|||
|
* Bump the required version of attrs
|
|||
|
* Fix unbalanced quotes
|
|||
|
* Pass access to blocks and intervals through a level of indirection
|
|||
|
* Run 'make format' with the new version of isort
|
|||
|
* dont use 'target' in naming arg to builds()
|
|||
|
* Improve section on testing
|
|||
|
* Fix tests expecting specific example counts
|
|||
|
* add docstrings in base_defines_strategy
|
|||
|
* fix test_{nested_}discarded_intervals_are_not_in_labels to not assert exact equality
|
|||
|
* Clean up argument handling logic so we have full coverage again
|
|||
|
* Deal with another old-typing-module problem
|
|||
|
* write release note
|
|||
|
* Update isort from 4.3.2 to 4.3.3
|
|||
|
* Run 'make requirements'
|
|||
|
* Add tests for labelling behaviour
|
|||
|
* Expand on what we track
|
|||
|
* Whoops new style class
|
|||
|
* Update pytz from 2017.3 to 2018.3
|
|||
|
* Move interval calculation to shrinker
|
|||
|
* Convert types from strings to hbytes
|
|||
|
* Only replace examples, not joined intervals. Make more things examples
|
|||
|
* Switch hyphens to em-dashes
|
|||
|
* Update autoflake from 1.0 to 1.1
|
|||
|
* Bump version to 3.44.21 and update changelog
|
|||
|
* Update python-gitlab from 1.2.0 to 1.3.0
|
|||
|
* Use more descriptive names
|
|||
|
* Move instructions on running tests to testing guide
|
|||
|
* Lets not have slow tests like that in tests/cover
|
|||
|
* Track changed blocks and remove a common offset from them
|
|||
|
* give every Example a label
|
|||
|
* Bump version to 3.44.18 and update changelog
|
|||
|
* Update isort from 4.3.3 to 4.3.4
|
|||
|
* Add tests for new behaviour
|
|||
|
* Bump version to 3.44.22 and update changelog
|
|||
|
* test_saves_negated_examples_in_covering docstring wording tweak
|
|||
|
* remove old implementation
|
|||
|
* Fix style issues in src
|
|||
|
* fix based on Zac's code review
|
|||
|
* Update imagesize from 0.7.1 to 1.0.0
|
|||
|
* Update coverage from 4.5 to 4.5.1
|
|||
|
* Update tests to account for new covering examples
|
|||
|
* Update certifi from 2017.11.5 to 2018.1.18
|
|||
|
* Update typing from 3.6.2 to 3.6.4
|
|||
|
* Track examples by draw index
|
|||
|
* rename target arg so we can use targets requiring an argument 'target'
|
|||
|
* Update babel from 2.5.2 to 2.5.3
|
|||
|
* Update pytest-xdist from 1.21.0 to 1.22.0
|
|||
|
* Add a release note
|
|||
|
* Monospace engine.py
|
|||
|
* Move flake8 config to tox.ini
|
|||
|
* Add flake8-docstrings
|
|||
|
* improve test_saves_negated_examples_in_covering to check what we actually care about
|
|||
|
* tweaks from code review
|
|||
|
* There was no good reason for that test to be that complicated
|
|||
|
* Correct env naming
|
|||
|
* Clean up unfinished examples at the end
|
|||
|
* Add a guide for working on internals
|
|||
|
* ideally -> usually
|
|||
|
* Update autopep8 from 1.3.3 to 1.3.4
|
|||
|
* Bump version to 3.45.3 and update changelog
|
|||
|
* Bump version to 3.45.0 and update changelog
|
|||
|
* Make test_minimize_sets_of_sets non-flaky
|
|||
|
* Remove seed
|
|||
|
* Remove reference to intervals
|
|||
|
* Update coverage from 4.4.2 to 4.5
|
|||
|
* Bump version to 3.45.1 and update changelog
|
|||
|
* Slight rewording
|
|||
|
* Bump version to 3.44.24 and update changelog
|
|||
|
* Update doctest
|
|||
|
* Bump version to 3.44.20 and update changelog
|
|||
|
* add myself to contributors
|
|||
|
* Bump version to 3.44.23 and update changelog
|
|||
|
* Update babel from 2.5.1 to 2.5.2
|
|||
|
* don't use backticks in exception messages
|
|||
|
* remove duplicate
|
|||
|
* Change the way we calculate average_size's default
|
|||
|
* fix formatting of release file
|
|||
|
* Remove a bunch of dead code and comments
|
|||
|
* Revert "Switch hyphens to em-dashes"
|
|||
|
* Track labels on examples
|
|||
|
* Fix style issues in tests
|
|||
|
* Clarify specificity there
|
|||
|
* Update sphinx from 1.6.6 to 1.6.7
|
|||
|
* Update sphinx from 1.6.7 to 1.7.0
|
|||
|
* Those spaces aren't needed
|
|||
|
* Run tests on 2.7.14
|
|||
|
* Just exit with the return code
|
|||
|
* fix indentation of docstrings produced by renamed_arguments
|
|||
|
* fix formatting
|
|||
|
* Update pygithub from 1.35 to 1.36
|
|||
|
- Use pythonhosted.org sdist for Source
|
|||
|
- Comment BuildRequires for tests. Tests in %check section are
|
|||
|
currently disabled
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Jan 17 15:46:40 UTC 2018 - tchvatal@suse.com
|
|||
|
|
|||
|
- Condition py2 only dependencies so we do not pull them on py3
|
|||
|
only scenario
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Jan 17 03:55:40 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.44.16:
|
|||
|
* This release improves test case reduction for recursive data
|
|||
|
structures. Hypothesis now guarantees that whenever a strategy
|
|||
|
calls itself recursively (usually this will happen because you are
|
|||
|
using deferred()), any recursive call may replace the top level
|
|||
|
value. e.g. given a tree structure, Hypothesis will always try
|
|||
|
replacing it with a subtree.
|
|||
|
* Additionally this introduces a new heuristic that may in some
|
|||
|
circumstances significantly speed up test case reduction -
|
|||
|
Hypothesis should be better at immediately replacing elements
|
|||
|
drawn inside another strategy with their minimal possible value.
|
|||
|
|
|||
|
- changes from version 3.44.15:
|
|||
|
* from_type() can now resolve recursive types such as binary trees
|
|||
|
(issue #1004). Detection of non-type arguments has also improved,
|
|||
|
leading to better error messages in many cases involving forward
|
|||
|
references.
|
|||
|
|
|||
|
- changes from version 3.44.14 :
|
|||
|
* This release fixes a bug in the shrinker that prevented the
|
|||
|
optimisations in 3.44.6 from working in some cases. It would not
|
|||
|
have worked correctly when filtered examples were nested
|
|||
|
(e.g. with a set of integers in some range).
|
|||
|
* This would not have resulted in any correctness problems, but
|
|||
|
shrinking may have been slower than it otherwise could be.
|
|||
|
|
|||
|
- changes from version 3.44.13:
|
|||
|
* This release changes the average bit length of values drawn from
|
|||
|
integers() to be much smaller. Additionally it changes the
|
|||
|
shrinking order so that now size is considered before sign -
|
|||
|
e.g. -1 will be preferred to +10.
|
|||
|
* The new internal format for integers required some changes to the
|
|||
|
minimizer to make work well, so you may also see some improvements
|
|||
|
to example quality in unrelated areas.
|
|||
|
|
|||
|
- changes from version 3.44.12:
|
|||
|
* This changes Hypothesis’s internal implementation of weighted
|
|||
|
sampling. This will affect example distribution and quality, but
|
|||
|
you shouldn’t see any other effects.
|
|||
|
|
|||
|
- changes from version 3.44.11 :
|
|||
|
* This is a change to some internals around how Hypothesis handles
|
|||
|
avoiding generating duplicate examples and seeking out novel
|
|||
|
regions of the search space.
|
|||
|
* You are unlikely to see much difference as a result of it, but it
|
|||
|
fixes a bug where an internal assertion could theoretically be
|
|||
|
triggered and has some minor effects on the distribution of
|
|||
|
examples so could potentially find bugs that have previously been
|
|||
|
missed.
|
|||
|
|
|||
|
- changes from version 3.44.10:
|
|||
|
* This patch avoids creating debug statements when debugging is
|
|||
|
disabled. Profiling suggests this is a 5-10% performance
|
|||
|
improvement (issue #1040).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Jan 6 17:11:29 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.44.9:
|
|||
|
* This patch blacklists null characters ('\x00') in automatically
|
|||
|
created strategies for Django CharField and TextField, due to a
|
|||
|
database issue which was recently fixed upstream (Hypothesis issue
|
|||
|
#1045).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Jan 6 07:24:23 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.44.8:
|
|||
|
* This release makes the Hypothesis shrinker slightly less greedy in
|
|||
|
order to avoid local minima - when it gets stuck, it makes a small
|
|||
|
attempt to search around the final example it would previously
|
|||
|
have returned to find a new starting point to shrink from. This
|
|||
|
should improve example quality in some cases, especially ones
|
|||
|
where the test data has dependencies among parts of it that make
|
|||
|
it difficult for Hypothesis to proceed.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Jan 4 17:06:43 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.44.7:
|
|||
|
* This release adds support for Django 2 in the hypothesis-django
|
|||
|
extra.
|
|||
|
* This release drops support for Django 1.10, as it is no longer
|
|||
|
supported by the Django team.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Jan 3 22:43:51 UTC 2018 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.44.6:
|
|||
|
* This release speeds up test case reduction in many examples by
|
|||
|
being better at detecting large shrinks it can use to discard
|
|||
|
redundant parts of its input. This will be particularly noticeable
|
|||
|
in examples that make use of filtering and for some integer
|
|||
|
ranges.
|
|||
|
|
|||
|
- changes from version 3.44.5:
|
|||
|
* This is a no-op release that updates the year range on all of the
|
|||
|
copyright headers in our source to include 2018.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Jan 3 10:03:42 UTC 2018 - tchvatal@suse.com
|
|||
|
|
|||
|
- Disable the tests as it is too flaky to be reliable
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Dec 31 05:55:59 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.44.4:
|
|||
|
* This release fixes issue #1044, which slowed tests by up to 6% due
|
|||
|
to broken caching.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Dec 21 18:22:00 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.44.3:
|
|||
|
* This release improves the shrinker in cases where examples drawn
|
|||
|
earlier can affect how much data is drawn later (e.g. when you
|
|||
|
draw a length parameter in a composite and then draw that many
|
|||
|
elements). Examples found in cases like this should now be much
|
|||
|
closer to minimal.
|
|||
|
|
|||
|
- changes from version 3.44.2:
|
|||
|
* This is a pure refactoring release which changes how Hypothesis
|
|||
|
manages its set of examples internally. It should have no
|
|||
|
externally visible effects.
|
|||
|
|
|||
|
- changes from version 3.44.1:
|
|||
|
* This release fixes issue #997, in which under some circumstances
|
|||
|
the body of tests run under Hypothesis would not show up when run
|
|||
|
under coverage even though the tests were run and the code they
|
|||
|
called outside of the test file would show up normally.
|
|||
|
|
|||
|
- changes from version 3.44.0:
|
|||
|
* This release adds a new feature: The @reproduce_failure, designed
|
|||
|
to make it easy to use Hypothesis’s binary format for examples to
|
|||
|
reproduce a problem locally without having to share your example
|
|||
|
database between machines.
|
|||
|
This also changes when seeds are printed:
|
|||
|
+ They will no longer be printed for normal falsifying examples,
|
|||
|
as there are now adequate ways of reproducing those for all
|
|||
|
cases, so it just contributes noise.
|
|||
|
+ They will once again be printed when reusing examples from the
|
|||
|
database, as health check failures should now be more reliable
|
|||
|
in this scenario so it will almost always work in this case.
|
|||
|
|
|||
|
- changes from version 3.43.1:
|
|||
|
* This release fixes a bug with Hypothesis’s database management -
|
|||
|
examples that were found in the course of shrinking were saved in
|
|||
|
a way that indicated that they had distinct causes, and so they
|
|||
|
would all be retried on the start of the next test. The intended
|
|||
|
behaviour, which is now what is implemented, is that only a
|
|||
|
bounded subset of these examples would be retried.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Dec 17 01:26:12 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.43.0:
|
|||
|
* HypothesisDeprecationWarning now inherits from FutureWarning
|
|||
|
instead of DeprecationWarning, as recommended by PEP 565 for
|
|||
|
user-facing warnings (issue #618). If you have not changed the
|
|||
|
default warnings settings, you will now see each distinct
|
|||
|
HypothesisDeprecationWarning instead of only the first.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Dec 15 08:55:52 UTC 2017 - ecsos@opensuse.org
|
|||
|
|
|||
|
- Add patch python-hypothesis-build.patch
|
|||
|
to fix Factory build error
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Dec 14 15:00:24 UTC 2017 - tchvatal@suse.com
|
|||
|
|
|||
|
- Update to 3.42.2:
|
|||
|
* Few tiny fixes
|
|||
|
- Switch to github tarball to contain tests
|
|||
|
- Make sure to state all buildtime dependencies
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Dec 12 00:54:26 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.42.1:
|
|||
|
* This release has some internal cleanup, which makes reading the
|
|||
|
code more pleasant and may shrink large examples slightly faster.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Dec 9 17:39:47 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- specfile:
|
|||
|
* removed conditional for test as requested in SR 555280
|
|||
|
* added coverage as a requirement
|
|||
|
|
|||
|
- update to version 3.42.0:
|
|||
|
* This release deprecates hypothesis[fakefactory], which was
|
|||
|
designed as a transition strategy but does not support example
|
|||
|
shrinking or coverage-guided discovery.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Dec 7 16:46:53 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.41.0:
|
|||
|
* sampled_from() can now sample from one-dimensional numpy
|
|||
|
ndarrays. Sampling from multi-dimensional ndarrays still results
|
|||
|
in a deprecation warning. Thanks to Charlie Tanksley for this
|
|||
|
patch.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Dec 6 02:52:35 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.40.1:
|
|||
|
|
|||
|
3.40.1 - 2017-12-04
|
|||
|
* This release makes two changes:
|
|||
|
+ It makes the calculation of some of the metadata that Hypothesis
|
|||
|
uses for shrinking occur lazily. This should speed up
|
|||
|
performance of test case generation a bit because it no longer
|
|||
|
calculates information it doesn’t need.
|
|||
|
+ It improves the shrinker for certain classes of nested
|
|||
|
examples. e.g. when shrinking lists of lists, the shrinker is
|
|||
|
now able to concatenate two adjacent lists together into a
|
|||
|
single list. As a result of this change, shrinking may get
|
|||
|
somewhat slower when the minimal example found is large.
|
|||
|
|
|||
|
- changes from version 3.40.0:
|
|||
|
* This release improves how various ways of seeding Hypothesis
|
|||
|
interact with the example database:
|
|||
|
+ Using the example database with seed() is now deprecated. You
|
|||
|
should set database=None if you are doing that. This will only
|
|||
|
warn if you actually load examples from the database while using
|
|||
|
@seed.
|
|||
|
+ The derandomize will behave the same way as @seed.
|
|||
|
+ Using --hypothesis-seed will disable use of the database.
|
|||
|
+ If a test used examples from the database, it will not suggest
|
|||
|
using a seed to reproduce it, because that won’t work.
|
|||
|
|
|||
|
- changes from version 3.39.0:
|
|||
|
* This release adds a new health check that checks if the smallest
|
|||
|
“natural” possible example of your test case is very large - this
|
|||
|
will tend to cause Hypothesis to generate bad examples and be
|
|||
|
quite slow.
|
|||
|
|
|||
|
- changes from version 3.38.9:
|
|||
|
* This is a documentation release to improve the documentation of
|
|||
|
shrinking behaviour for Hypothesis’s strategies.
|
|||
|
|
|||
|
- changes from version 3.38.8:
|
|||
|
* This release improves the performance of characters() when using
|
|||
|
blacklist_characters and from_regex() when using negative
|
|||
|
character classes.
|
|||
|
|
|||
|
- changes from version 3.38.7:
|
|||
|
* This is a patch release for from_regex(), which had a bug in
|
|||
|
handling of the re.VERBOSE flag (issue #992). Flags are now
|
|||
|
handled correctly when parsing regex.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Nov 28 19:04:24 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.38.6:
|
|||
|
* This patch changes a few byte-string literals from double to
|
|||
|
single quotes, thanks to an update in unify. There are no
|
|||
|
user-visible changes.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Nov 26 21:26:33 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.38.5:
|
|||
|
* This fixes the repr of strategies using lambda that are defined
|
|||
|
inside decorators to include the lambda source.
|
|||
|
This would mostly have been visible when using the statistics
|
|||
|
functionality - lambdas used for e.g. filtering would have shown
|
|||
|
up with a <unknown> as their body. This can still happen, but it
|
|||
|
should happen less often now.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Nov 22 19:42:32 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.38.4:
|
|||
|
* This release updates the reported statistics so that they show
|
|||
|
approximately what fraction of your test run time is spent in data
|
|||
|
generation (as opposed to test execution).
|
|||
|
|
|||
|
- changes from version 3.38.3:
|
|||
|
* This is a documentation release, which ensures code examples are
|
|||
|
up to date by running them as doctests in CI (issue #711).
|
|||
|
|
|||
|
- changes from version 3.38.2:
|
|||
|
* This release changes the behaviour of the deadline setting when
|
|||
|
used with data(): Time spent inside calls to data.draw will no
|
|||
|
longer be counted towards the deadline time.
|
|||
|
* As a side effect of some refactoring required for this work, the
|
|||
|
way flaky tests are handled has changed slightly. You are unlikely
|
|||
|
to see much difference from this, but some error messages will
|
|||
|
have changed.
|
|||
|
|
|||
|
- changes from version 3.38.1:
|
|||
|
* This patch has a variety of non-user-visible refactorings,
|
|||
|
removing various minor warts ranging from indirect imports to
|
|||
|
typos in comments.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Nov 19 05:19:56 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.38.0:
|
|||
|
* This release overhauls the health check system in a variety of
|
|||
|
small ways. It adds no new features, but is nevertheless a minor
|
|||
|
release because it changes which tests are likely to fail health
|
|||
|
checks.
|
|||
|
* The most noticeable effect is that some tests that used to fail
|
|||
|
health checks will now pass, and some that used to pass will
|
|||
|
fail. These should all be improvements in accuracy. In particular:
|
|||
|
+ New failures will usually be because they are now taking into
|
|||
|
account things like use of data() and assume() inside the test
|
|||
|
body.
|
|||
|
+ New failures may also be because for some classes of example the
|
|||
|
way data generation performance was measured was artificially
|
|||
|
faster than real data generation (for most examples that are
|
|||
|
hitting performance health checks the opposite should be the
|
|||
|
case).
|
|||
|
+ Tests that used to fail health checks and now pass do so because
|
|||
|
the health check system used to run in a way that was subtly
|
|||
|
different than the main Hypothesis data generation and lacked
|
|||
|
some of its support for e.g. large examples.
|
|||
|
* If your data generation is especially slow, you may also see your
|
|||
|
tests get somewhat faster, as there is no longer a separate health
|
|||
|
check phase. This will be particularly noticeable when rerunning
|
|||
|
test failures.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Nov 14 01:32:07 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.37.0:
|
|||
|
* This is a deprecation release for some health check related
|
|||
|
features.
|
|||
|
* The following are now deprecated:
|
|||
|
+ Passing exception_in_generation to suppress_health_check. This
|
|||
|
no longer does anything even when passed - All errors that occur
|
|||
|
during data generation will now be immediately reraised rather
|
|||
|
than going through the health check mechanism.
|
|||
|
+ Passing random_module to suppress_health_check. This hasn’t done
|
|||
|
anything for a long time, but was never explicitly
|
|||
|
deprecated. Hypothesis always seeds the random module when
|
|||
|
running @given tests, so this is no longer an error and
|
|||
|
suppressing it doesn’t do anything.
|
|||
|
+ Passing non-HealthCheck values in suppress_health_check. This
|
|||
|
was previously allowed but never did anything useful.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Nov 11 17:16:21 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.36.1:
|
|||
|
* This is a yak shaving release, mostly concerned with our own
|
|||
|
tests.
|
|||
|
While getfullargspec() was documented as deprecated in Python 3.5,
|
|||
|
it never actually emitted a warning. Our code to silence this
|
|||
|
(nonexistent) warning has therefore been removed.
|
|||
|
We now run our tests with DeprecationWarning as an error, and made
|
|||
|
some minor changes to our own tests as a result. This required
|
|||
|
similar upstream updates to coverage and execnet (a test-time
|
|||
|
dependency via pytest-xdist).
|
|||
|
There is no user-visible change in Hypothesis itself, but we
|
|||
|
encourage you to consider enabling deprecations as errors in your
|
|||
|
own tests.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Nov 7 23:22:24 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.36.0:
|
|||
|
* This release adds a setting to the public API, and does some
|
|||
|
internal cleanup:
|
|||
|
+ The derandomize setting is now documented (issue #890)
|
|||
|
+ Removed - and disallowed - all ‘bare excepts’ in Hypothesis
|
|||
|
(issue #953)
|
|||
|
+ Documented the strict setting as deprecated, and updated the
|
|||
|
build so our docs always match deprecations in the code.
|
|||
|
|
|||
|
- changes from version 3.35.0:
|
|||
|
* This minor release supports constraining uuids() to generate
|
|||
|
uuid.UUID`s of a particular version. (:issue:`721)
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sat Nov 4 02:01:40 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.34.1:
|
|||
|
* This patch updates the documentation to suggest builds(callable)
|
|||
|
instead of just(callable()).
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Nov 3 05:13:56 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.34.0:
|
|||
|
* Hypothesis now emits deprecation warnings if you apply @given more
|
|||
|
than once to a target.
|
|||
|
Applying @given repeatedly wraps the target multiple times. Each
|
|||
|
wrapper will search the space of of possible parameters
|
|||
|
separately. This is equivalent but will be much more inefficient
|
|||
|
than doing it with a single call to @given.
|
|||
|
For example, instead of @given(booleans()) @given(integers()), you
|
|||
|
could write @given(booleans(), integers())
|
|||
|
|
|||
|
- changes from version 3.33.1 :
|
|||
|
* builds() would try to infer a strategy for required positional
|
|||
|
arguments of the target from type hints, even if they had been
|
|||
|
given to builds() as positional arguments (issue #946). Now it
|
|||
|
only infers missing required arguments.
|
|||
|
* An internal introspection function wrongly reported self as a
|
|||
|
required argument for bound methods, which might also have
|
|||
|
affected builds(). Now it knows better.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Oct 17 01:47:00 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.33.0:
|
|||
|
* This release supports strategy inference for more field types in
|
|||
|
Django models() - you can now omit an argument for Date, Time,
|
|||
|
Duration, Slug, IP Address, and UUID fields. (issue #642)
|
|||
|
* Strategy generation for fields with grouped choices now selects
|
|||
|
choices from each group, instead of selecting from the group
|
|||
|
names.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Sun Oct 15 22:19:10 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- specfile:
|
|||
|
* removed sed for src/hypothesis/tools/mergedbs.py, not in tar-ball anymore
|
|||
|
|
|||
|
- update to version 3.32.2:
|
|||
|
* This patch removes the mergedb tool, introduced in Hypothesis
|
|||
|
1.7.1 on an experimental basis. It has never actually worked, and
|
|||
|
the new Hypothesis example database is designed to make such a
|
|||
|
tool unnecessary.
|
|||
|
|
|||
|
- changes from version 3.32.1:
|
|||
|
* This patch has two improvements for strategies based on
|
|||
|
enumerations.
|
|||
|
* from_type() now handles enumerations correctly, delegating to
|
|||
|
sampled_from(). Previously it noted that Enum.__init__ has no
|
|||
|
required arguments and therefore delegated to builds(), which
|
|||
|
would subsequently fail.
|
|||
|
* When sampling from an enum.Flag, we also generate combinations of
|
|||
|
members. Eg for Flag('Permissions', 'READ, WRITE, EXECUTE') we can
|
|||
|
now generate, Permissions.READ, Permissions.READ|WRITE, and so on.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Oct 9 04:06:23 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.32.0:
|
|||
|
* This changes the default value of use_coverage=True to True when
|
|||
|
running on pypy (it was already True on CPython).
|
|||
|
|
|||
|
It was previously set to False because we expected it to be too
|
|||
|
slow, but recent benchmarking shows that actually performance of
|
|||
|
the feature on pypy is fairly acceptable - sometimes it’s slower
|
|||
|
than on CPython, sometimes it’s faster, but it’s generally within
|
|||
|
a factor of two either way.
|
|||
|
|
|||
|
- changes from version 3.31.6:
|
|||
|
* This patch improves the quality of strategies inferred from Numpy
|
|||
|
dtypes:
|
|||
|
+ Integer dtypes generated examples with the upper half of their
|
|||
|
(non-sign) bits set to zero. The inferred strategies can now
|
|||
|
produce any representable integer.
|
|||
|
+ Fixed-width unicode- and byte-string dtypes now cap the internal
|
|||
|
example length, which should improve example and shrink quality.
|
|||
|
+ Numpy arrays can only store fixed-size strings internally, and
|
|||
|
allow shorter strings by right-padding them with null
|
|||
|
bytes. Inferred string strategies no longer generate such
|
|||
|
values, as they can never be retrieved from an array. This
|
|||
|
improves shrinking performance by skipping useless values.
|
|||
|
+ This has already been useful in Hypothesis - we found an
|
|||
|
overflow bug in our Pandas support, and as a result indexes()
|
|||
|
and range_indexes() now check that min_size and max_size are at
|
|||
|
least zero.
|
|||
|
|
|||
|
- changes from version 3.31.5:
|
|||
|
* This release fixes a performance problem in tests where
|
|||
|
+ use_coverage is set to True.
|
|||
|
+ Tests experience a slow-down proportionate to the amount of code
|
|||
|
they cover. This is still the case, but the factor is now low
|
|||
|
enough that it should be unnoticeable. Previously it was large
|
|||
|
and became much larger in 3.28.4.
|
|||
|
|
|||
|
- changes from version 3.31.4:
|
|||
|
* from_type() failed with a very confusing error if passed a
|
|||
|
NewType() (issue #901). These psudeo-types are now unwrapped
|
|||
|
correctly, and strategy inference works as expected.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Fri Oct 6 19:43:51 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.31.3:
|
|||
|
* This release makes some small optimisations to our use of coverage
|
|||
|
that should reduce constant per-example overhead. This is probably
|
|||
|
only noticeable on examples where the test itself is quite
|
|||
|
fast. On no-op tests that don’t test anything you may see up to a
|
|||
|
fourfold speed increase (which is still significantly slower than
|
|||
|
without coverage). On more realistic tests the speed up is likely
|
|||
|
to be less than that.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Oct 5 12:11:08 UTC 2017 - dimstar@opensuse.org
|
|||
|
|
|||
|
- Add python-attrs and python-coverage requires, matching the info
|
|||
|
of setup.py.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Oct 3 01:14:16 UTC 2017 - arun@gmx.de
|
|||
|
|
|||
|
- update to version 3.31.2:
|
|||
|
* long list of updates, see
|
|||
|
https://hypothesis.readthedocs.io/en/latest/changes.html
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon Jul 10 11:52:42 UTC 2017 - jengelh@inai.de
|
|||
|
|
|||
|
- Ensure neutrality of description.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu Jun 29 17:51:17 UTC 2017 - aloisio@gmx.com
|
|||
|
|
|||
|
- Update to version 3.11.6
|
|||
|
(see https://github.com/HypothesisWorks/hypothesis-python/blob/3.11.6/docs/changes.rst)
|
|||
|
- Added fdupes
|
|||
|
- Updated homepage URL
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Feb 21 14:06:42 UTC 2017 - jmatejek@suse.com
|
|||
|
|
|||
|
- update for singlespec
|
|||
|
- test requirements are now conditional --with=test, to shorten build loop
|
|||
|
for new submission
|
|||
|
(this will be reverted soon)
|
|||
|
- update to 3.6.1
|
|||
|
* better thread safety
|
|||
|
* support for --hypothesis-show-statistics in pytest
|
|||
|
* better python 3.4 support
|
|||
|
* renamed fake-factory dependency to Faker
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Thu May 12 16:35:11 UTC 2016 - toddrme2178@gmail.com
|
|||
|
|
|||
|
- Fix download URL.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Mon May 9 17:57:36 UTC 2016 - toddrme2178@gmail.com
|
|||
|
|
|||
|
- Update to 3.1.3
|
|||
|
+ Single bug fix release
|
|||
|
* Another charmap problem. In 3.1.2 text/characters would break on systems
|
|||
|
which had /tmp/ mounted on a different partition than the Hypothesis
|
|||
|
storage directory (usually in home). This fixes that.
|
|||
|
- Update to 3.1.2
|
|||
|
+ Single bug fix release:
|
|||
|
* Anything which used a text() or characters() strategy was broken on
|
|||
|
Windows and I hadn’t updated appveyor to use the new repository location
|
|||
|
so I didn’t notice. This is now fixed and windows support should work
|
|||
|
correctly.
|
|||
|
- Update to 3.1.1
|
|||
|
+ Minor bug fix release.
|
|||
|
* Fix concurrency issue when running tests that use text() from multiple
|
|||
|
processes at once (Bug #302, thanks to Alex Chan).
|
|||
|
* Improve performance of code using lists with max_size (thanks to Cristi
|
|||
|
Cobzarenco).
|
|||
|
* Fix install on Python 2 with ancient versions of pip so that it installs
|
|||
|
the enum34 backport (thanks to Donald Stufft for telling me how to do
|
|||
|
this).
|
|||
|
* Remove duplicated __all__ exports from hypothesis.strategies (thanks to
|
|||
|
Piët Delport).
|
|||
|
* Update headers to point to new repository location.
|
|||
|
* Allow use of strategies that can’t be used in find() (e.g. choices) in
|
|||
|
stateful testing.
|
|||
|
- Update to 3.1.0
|
|||
|
* Add a ‘nothing’ strategy that never successfully generates values.
|
|||
|
* sampled_from() and one_of() can both now be called with an empty argument
|
|||
|
list, in which case they also never generate any values.
|
|||
|
* one_of may now be called with a single argument that is a collection of
|
|||
|
strategies as well as as varargs.
|
|||
|
* Add a ‘runner’ strategy which returns the instance of the current test
|
|||
|
object if there is one.
|
|||
|
* ‘Bundle’ for RuleBasedStateMachine is now a normal(ish) strategy and can be
|
|||
|
used as such.
|
|||
|
* Tests using RuleBasedStateMachine should now shrink significantly better.
|
|||
|
* Hypothesis now uses a pretty-printing library internally, compatible with
|
|||
|
IPython’s pretty printing protocol (actually using the same code). This may
|
|||
|
improve the quality of output in some cases.
|
|||
|
* As a ‘phases’ setting that allows more fine grained control over which
|
|||
|
parts of the process Hypothesis runs
|
|||
|
* Add a suppress_health_check setting which allows you to turn off specific
|
|||
|
health checks in a fine grained manner.
|
|||
|
* Fix a bug where lists of non fixed size would always draw one more element
|
|||
|
than they included. This mostly didn’t matter, but if would cause problems with
|
|||
|
empty strategies or ones with side effects.
|
|||
|
* Add a mechanism to the Django model generator to allow you to explicitly
|
|||
|
request the default value (thanks to Jeremy Thurgood for this one).
|
|||
|
- Update to 3.0.5
|
|||
|
* Fix a bug where Hypothesis would now error on py.test development versions.
|
|||
|
- Update to 3.0.4
|
|||
|
* Fix a bug where Hypothesis would error when running on Python 2.7.3 or
|
|||
|
earlier because it was trying to pass a bytearray object to struct.unpack
|
|||
|
(which is only supported since 2.7.4).
|
|||
|
- Update to 3.0.3
|
|||
|
* Fix version parsing of py.test to work with py.test release candidates
|
|||
|
* More general handling of the health check problem where things could fail
|
|||
|
because of a cache miss - now one “free” example is generated before the
|
|||
|
start of the health check run.
|
|||
|
- Update to 3.0.2
|
|||
|
* Under certain circumstances, strategies involving text() buried inside some
|
|||
|
other strategy (e.g. text().filter(...) or recursive(text(), ...)) would
|
|||
|
cause a test to fail its health checks the first time it ran. This was
|
|||
|
caused by having to compute some related data and cache it to disk. On
|
|||
|
travis or anywhere else where the .hypothesis directory was recreated this
|
|||
|
would have caused the tests to fail their health check on every run. This
|
|||
|
is now fixed for all the known cases, although there could be others
|
|||
|
lurking.
|
|||
|
- Update to 3.0.1
|
|||
|
* Fix a case where it was possible to trigger an “Unreachable” assertion when
|
|||
|
running certain flaky stateful tests.
|
|||
|
* Improve shrinking of large stateful tests by eliminating a case where it
|
|||
|
was hard to delete early steps.
|
|||
|
* Improve efficiency of drawing binary(min_size=n, max_size=n) significantly
|
|||
|
by provide a custom implementation for fixed size blocks that can bypass a
|
|||
|
lot of machinery.
|
|||
|
* Set default home directory based on the current working directory at the
|
|||
|
point Hypothesis is imported, not whenever the function first happens to be
|
|||
|
called.
|
|||
|
- Update to 3.0.0
|
|||
|
+ Externally this looks like a very small release. It has one small breaking
|
|||
|
change that probably doesn’t affect anyone at all (some behaviour that
|
|||
|
never really worked correctly is now outright forbidden) but necessitated a
|
|||
|
major version bump and one visible new feature.
|
|||
|
Internally this is a complete rewrite. Almost nothing other than the
|
|||
|
public API is the same.
|
|||
|
+ New features:
|
|||
|
* Addition of data() strategy which allows you to draw arbitrary data
|
|||
|
interactively within the test.
|
|||
|
* New “exploded” database format which allows you to more easily check the
|
|||
|
example database into a source repository while supporting merging.
|
|||
|
* Better management of how examples are saved in the database.
|
|||
|
* Health checks will now raise as errors when they fail. It was too easy to
|
|||
|
have the warnings be swallowed entirely.
|
|||
|
+ New limitations:
|
|||
|
* choices and streaming strategies may no longer be used with find().
|
|||
|
Neither may data() (this is the change that necessitated a major version
|
|||
|
bump).
|
|||
|
+ Feature removal:
|
|||
|
* The ForkingTestCase executor has gone away. It may return in some more
|
|||
|
working form at a later date.
|
|||
|
+ Performance improvements:
|
|||
|
* A new model which allows flatmap, composite strategies and stateful
|
|||
|
testing to perform much better. They should also be more reliable.
|
|||
|
* Filtering may in some circumstances have improved significantly. This
|
|||
|
will help especially in cases where you have lots of values with
|
|||
|
individual filters on them, such as lists(x.filter(...)).
|
|||
|
* Modest performance improvements to the general test runner by avoiding
|
|||
|
expensive operations
|
|||
|
* In general your tests should have got faster. If they’ve instead got
|
|||
|
significantly slower, I’m interested in hearing about it.
|
|||
|
+ Data distribution:
|
|||
|
* The data distribution should have changed significantly. This may uncover
|
|||
|
bugs the previous version missed. It may also miss bugs the previous
|
|||
|
version could have uncovered. Hypothesis is now producing less strongly
|
|||
|
correlated data than it used to, but the correlations are extended over
|
|||
|
more of the structure.
|
|||
|
+ Shrinking:
|
|||
|
* Shrinking quality should have improved. In particular Hypothesis can now
|
|||
|
perform simultaneous shrinking of separate examples within a single test
|
|||
|
(previously it was only able to do this for elements of a single
|
|||
|
collection).
|
|||
|
In some cases performance will have improved, in some cases it will have
|
|||
|
got worse but generally shouldn’t have by much.
|
|||
|
- Update to 2.0.0
|
|||
|
+ This release cleans up all of the legacy that accrued in the course of
|
|||
|
Hypothesis 1.0. These are mostly things that were emitting deprecation
|
|||
|
warnings in 1.19.0, but there were a few additional changes.
|
|||
|
In particular:
|
|||
|
* non-strategy values will no longer be converted to strategies when used
|
|||
|
in given or find.
|
|||
|
* FailedHealthCheck is now an error and not a warning.
|
|||
|
* Handling of non-ascii reprs in user types have been simplified by using
|
|||
|
raw strings in more places in Python 2.
|
|||
|
* given no longer allows mixing positional and keyword arguments.
|
|||
|
* given no longer works with functions with defaults.
|
|||
|
* given no longer turns provided arguments into defaults - they will not
|
|||
|
appear in the argspec at all.
|
|||
|
* the basic() strategy no longer exists.
|
|||
|
* the n_ary_tree strategy no longer exists.
|
|||
|
* the average_list_length setting no longer exists. Note: If you’re using
|
|||
|
using recursive() this will cause you a significant slow down. You should
|
|||
|
pass explicit average_size parameters to collections in recursive calls.
|
|||
|
* @rule can no longer be applied to the same method twice.
|
|||
|
* Python 2.6 and 3.3 are no longer officially supported, although in
|
|||
|
practice they still work fine.
|
|||
|
+ This also includes two non-deprecation changes:
|
|||
|
* given’s keyword arguments no longer have to be the rightmost arguments
|
|||
|
and can appear anywhere in the method signature.
|
|||
|
* The max_shrinks setting would sometimes not have been respected.
|
|||
|
- Update to 1.19.0
|
|||
|
+ This release heralds the beginning of a new and terrible age of Hypothesis
|
|||
|
2.0.
|
|||
|
It’s primary purpose is some final deprecations prior to said release. The
|
|||
|
goal is that if your code emits no warnings under this release then it
|
|||
|
will probably run unchanged under Hypothesis 2.0 (there are some caveats
|
|||
|
to this: 2.0 will drop support for some Python versions, and if you’re
|
|||
|
using internal APIs then as usual that may break without warning).
|
|||
|
+ It does have two new features:
|
|||
|
* New @seed() decorator which allows you to manually seed a test. This may
|
|||
|
be harmlessly combined with and overrides the derandomize setting.
|
|||
|
* settings objects may now be used as a decorator to fix those settings to
|
|||
|
a particular @given test.
|
|||
|
+ API changes (old usage still works but is deprecated):
|
|||
|
* Settings has been renamed to settings (lower casing) in order to make the
|
|||
|
decorator usage more natural.
|
|||
|
* Functions for the storage directory that were in hypothesis.settings are
|
|||
|
now in a new hypothesis.configuration module.
|
|||
|
+ Additional deprecations:
|
|||
|
* the average_list_length setting has been deprecated in favour of being
|
|||
|
explicit.
|
|||
|
* the basic() strategy has been deprecated as it is impossible to support
|
|||
|
it under a Conjecture based model, which will hopefully be implemented at
|
|||
|
some point in the 2.x series.
|
|||
|
* the n_ary_tree strategy (which was never actually part of the public API)
|
|||
|
has been deprecated.
|
|||
|
* Passing settings or random as keyword arguments to given is deprecated
|
|||
|
(use the new functionality instead)
|
|||
|
+ Bug fixes:
|
|||
|
* No longer emit PendingDeprecationWarning for __iter__ and StopIteration
|
|||
|
in streaming() values.
|
|||
|
* When running in health check mode with non strict, don’t print quite so
|
|||
|
many errors for an exception in reify.
|
|||
|
* When an assumption made in a test or a filter is flaky, tests will now
|
|||
|
raise Flaky instead of UnsatisfiedAssumption.
|
|||
|
- Update to 1.18.1
|
|||
|
+ Two behind the scenes changes:
|
|||
|
* Hypothesis will no longer write generated code to the file system. This
|
|||
|
will improve performance on some systems (e.g. if you’re using
|
|||
|
PythonAnywhere which is running your code from NFS) and prevent some
|
|||
|
annoying interactions with auto-restarting systems.
|
|||
|
* Hypothesis will cache the creation of some strategies. This can
|
|||
|
significantly improve performance for code that uses flatmap or composite
|
|||
|
and thus has to instantiate strategies a lot.
|
|||
|
- Update to 1.18.0
|
|||
|
+ Features:
|
|||
|
* Tests and find are now explicitly seeded off the global random module.
|
|||
|
This means that if you nest one inside the other you will now get a
|
|||
|
health check error. It also means that you can control global
|
|||
|
randomization by seeding random.
|
|||
|
* There is a new random_module() strategy which seeds the global random
|
|||
|
module for you and handles things so that you don’t get a health check
|
|||
|
warning if you use it inside your tests.
|
|||
|
* floats() now accepts two new arguments: allow_nan and allow_infinity.
|
|||
|
These default to the old behaviour, but when set to False will do what
|
|||
|
the names suggest.
|
|||
|
+ Bug fixes:
|
|||
|
* Fix a bug where tests that used text() on Python 3.4+ would not actually
|
|||
|
be deterministic even when explicitly seeded or using the derandomize
|
|||
|
mode, because generation depended on dictionary iteration order which was
|
|||
|
affected by hash randomization.
|
|||
|
* Fix a bug where with complicated strategies the timing of the initial
|
|||
|
health check could affect the seeding of the subsequent test, which would
|
|||
|
also render supposedly deterministic tests non-deterministic in some
|
|||
|
scenarios.
|
|||
|
* In some circumstances flatmap() could get confused by two structurally
|
|||
|
similar things it could generate and would produce a flaky test where the
|
|||
|
first time it produced an error but the second time it produced the other
|
|||
|
value, which was not an error. The same bug was presumably also possible
|
|||
|
in composite().
|
|||
|
* flatmap() and composite() initial generation should now be moderately
|
|||
|
faster. This will be particularly noticeable when you have many values
|
|||
|
drawn from the same strategy in a single run, e.g. constructs like
|
|||
|
lists(s.flatmap(f)). Shrinking performance may have suffered, but this
|
|||
|
didn’t actually produce an interestingly worse result in any of the
|
|||
|
standard scenarios tested.
|
|||
|
- Update to 1.17.1
|
|||
|
* A small bug fix release, which fixes the fact that the ‘note’ function
|
|||
|
could not be used on tests which used the @example decorator to provide
|
|||
|
explicit examples.
|
|||
|
- Update to 1.17.0
|
|||
|
+ This is actually the same release as 1.16.1, but 1.16.1 has been pulled
|
|||
|
because it contains the following additional change that was not intended
|
|||
|
to be in a patch release (it’s perfectly stable, but is a larger change
|
|||
|
that should have required a minor version bump):
|
|||
|
* Hypothesis will now perform a series of “health checks” as part of
|
|||
|
running your tests. These detect and warn about some common error
|
|||
|
conditions that people often run into which wouldn’t necessarily have
|
|||
|
caued the test to fail but would cause e.g. degraded performance or
|
|||
|
confusing results.
|
|||
|
- Update to 1.16.1
|
|||
|
* A small bugfix release that allows bdists for Hypothesis to be built under
|
|||
|
2.7 - the compat3.py file which had Python 3 syntax wasn’t intended to be
|
|||
|
loaded under Python 2, but when building a bdist it was. In particular
|
|||
|
this would break running setup.py test.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Wed Dec 9 10:06:43 UTC 2015 - dmueller@suse.com
|
|||
|
|
|||
|
- update to 1.16.0:
|
|||
|
* Functions from hypothesis.strategies will no longer raise InvalidArgument on bad arguments
|
|||
|
* Errors caused by accidentally invoking the legacy API are now much less confusing
|
|||
|
* hypothesis.extra.django is 1.9 compatible.
|
|||
|
* When tests are run with max_shrinks=0 this will now still rerun the test on failure
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Nov 24 12:48:51 UTC 2015 - toddrme2178@gmail.com
|
|||
|
|
|||
|
- Fix license naming.
|
|||
|
|
|||
|
-------------------------------------------------------------------
|
|||
|
Tue Nov 10 07:38:36 UTC 2015 - tbechtold@suse.com
|
|||
|
|
|||
|
- Initial packaging (version 1.14.0)
|
|||
|
|