SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG

 
 
Changelog for python312-hypothesis-6.98.9-195.4.noarch.rpm :

* Fri Mar 15 2024 Matej Cepl - Clean up the SPEC file
* Thu Feb 22 2024 Markéta Machová - Update to 6.98.9
* Avoid creating a .hypothesis directory when using register_type_strategy().
* Add ability to pass any object to note().
* Warn when constructing a repr that is overly long.
* Change the distribution of sampled_from() when sampling from a Flag.
* Deprecate use of the global random number generator while drawing from a strategy.
* Improve our distribution of generated values for all strategies.
* Improve the Ghostwriter for binary operators.
* Wed Jan 24 2024 ecsos - Update to 6.93.2:
* This patch improves observability reports by moving timing information from metadata to a new timing key, and supporting conversion of additional argument types to json rather than string reprs via a .to_json() method (including e.g. Pandas dataframes).
* Sat Jan 06 2024 Dirk Müller - update to 6.92.2:
* updates vendored list of top-level domains
* Wed Dec 27 2023 Dirk Müller - update to 6.92.1:
* This release adds an experimental :wikipedia:`observability
* This patch fixes an issue where :func:`~hypothesis.strategies.builds` could not be used with :pypi:`attrs` objects that defined private attributes (i.e. attributes with a leading underscore). See also
* This release adds an optional ``payload`` argument to :func:`hypothesis.event`, so that you can clearly express the difference between the label and the value of an observation.
* This patch supports assigning ``settings = settings(...)`` as a class attribute on a subclass of a ``.TestCase`` attribute of a :class:`~hypothesis.stateful.RuleBasedStateMachine`.
* This release makes it an error to assign ``settings = settings(...)`` as a class attribute on a :class:`~hypothesis.stateful.RuleBasedStateMachine`.
* This patch refactors some internals. There is no user- visible change, but we hope to improve performance and unlock support for alternative backends such as :pypi:`symbolic execution with crosshair in future (:issue:`3086`).
* This release teaches :func:`~hypothesis.strategies.from_type` to handle constraints implied by the :pypi:`annotated-types` package - as used by e.g. :pypi:`Pydantic`.
* This patch adds a warning when :func:`AATTst.composite wraps a function annotated as returning a :class:`~hypothesis.strategies.SearchStrategy`, since this is usually an error (:issue:`3786`).
* This patch refactors ``from_type(typing.Tuple)``, allowing :func:`~hypothesis.strategies.register_type_strategy` to take effect for tuples instead of being silently ignored
* This patch improves the speed of the explain phase on python 3.12+, by using the new :mod:`sys.monitoring` module to collect coverage, instead of :obj:`sys.settrace`.
* Wed Nov 01 2023 Ondřej Súkup - Update to 6.88.1
* improves :func:`~hypothesis.strategies.register_type_strategy` when used with tuple subclasses, by preventing them from being interpreted as generic and provided to strategies like st.from_type(Sequence[int])
* Mon Oct 16 2023 Ondřej Súkup - Update to 6.88.0- disable flaky test
* This release allows strategy-generating functions registered with register_type_strategy() to conditionally not return a strategy, by returning NotImplemented
* When randoms( was called with use_true_randoms=False, calling sample on it with an empty sequence and 0 elements would result in an error, when it should have returned an empty sequence to agree with the normal behaviour of random.Random. This fixes that discrepancy.)
* Wed Oct 11 2023 Ondřej Súkup - Update to 6.87.3
* This patch ensures that the :ref:`hypothesis codemod ` CLI will print a warning instead of stopping with an internal error if one of your files contains invalid syntax (:issue:`3759`).
* This patch makes some small changes to our NumPy integration to ensure forward compatibility.
* Fixes :issue:`3755`, where an internal condition turns out to be reachable after all.
* This release deprecates use of :func:`~hypothesis.assume` and reject() outside of property-based tests, because these functions work by raising a special exception (:issue:`3743`). It also fixes some type annotations (:issue:`3753`).
* Hotfix for :issue:`3747`, a bug in explain mode which is so rare that we missed it in six months of dogfooding. Thanks to :pypi:`mygrad` for discovering and promptly reporting this!
* This patch improves the documentation of :obj:`AATTexample(...).xfail() ` by adding a note about PEP 614, similar to :obj:`AATTexample(...).via() `, and adds a warning when a strategy generates a test case which seems identical to one provided by an xfailed example.
* This release enables the :obj:`~hypothesis.Phase.explain` :ref:`phase ` by default. We hope it helps you to understand why your failing tests have failed!
* This patch switches some of our type annotations to use :obj:`typing.Literal` when only a few specific values are allowed, such as UUID or IP address versions.
* This release deprecates the old whitelist/blacklist arguments to :func:`~hypothesis.strategies.characters`, in favor of include/exclude arguments which more clearly describe their effects on the set of characters which can be generated.
* You can :ref:`use Hypothesis\' codemods ` to automatically upgrade to the new argument names. In a future version, the old names will start to raise a DeprecationWarning.
* This patch automatically disables the :obj:`~hypothesis.HealthCheck.differing_executors` health check for methods which are also pytest parametrized tests, because those were mostly false alarms (:issue:`3733`).
* Building on recent releases, :func:`~hypothesis.strategies.characters` now accepts _any_ codec=, not just \"utf-8\" and \"ascii\".
* This includes standard codecs from the :mod:`codecs` module and their aliases, platform specific and user-registered codecs if they are available, and python-specific text encodings (but not text transforms or binary transforms).
* This patch by Reagan Lee makes st.text(...).filter(str.isidentifier) return an efficient custom strategy (:issue:`3480`).
* The :func:`~hypothesis.strategies.from_regex` strategy now takes an optional alphabet=characters(codec=\"utf-8\") argument for unicode strings, like :func:`~hypothesis.strategies.text`.
* This offers more and more-consistent control over the generated strings, removing previously-hard-coded limitations. With fullmatch=False and alphabet=characters(), surrogate characters are now possible in leading and trailing text as well as the body of the match. Negated character classes such as [^A-Z] or \\S had a hard-coded exclusion of control characters and surrogate characters; now they permit anything in alphabet= consistent with the class, and control characters are permitted by default.
* Add a health check that detects if the same test is executed several times by :ref:`different executors`. This can lead to difficult-to-debug problems such as :issue:`3446`.
* Pretty-printing of failing examples can now use functions registered with :func:`IPython.lib.pretty.for_type` or :func:`~IPython.lib.pretty.for_type_by_name`, as well as restoring compatibility with _repr_pretty_ callback methods which were accidentally broken in :ref:`version 6.61.2 ` (:issue:`3721`).
* Adds a new codec= option in :func:`~hypothesis.strategies.characters`, making it convenient to produce only characters which can be encoded as ascii or utf-8 bytestrings.
* Tue Aug 29 2023 Ben Greiner - 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 2023 Dirk Müller - 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 ` 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 `, this release supports immutable arrays being generated via :func:`xps.arrays`.
* and adds automatic support for writing ``AATThypothesis.example()`` or ``AATTexample()`` 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 2023 Dirk Müller - 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 2023 Daniel Garcia - 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 AATTexample()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 AATTexample().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 2023 Dirk Müller - add sle15_python_module_pythons (jsc#PED-68)
* Thu Apr 13 2023 Matej Cepl - Make calling of %{sle15modernpython} optional.
* Fri Feb 17 2023 Matej Cepl - Limit dependencies for tests on older distributions (particularly do not depend on Django, Pandas, and fakeredis and Redis).
* Sat Jan 07 2023 Ben Greiner - 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 2022 Daniel Garcia - 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:`AATTexample() `\\ 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 `__, 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 `__. See :issue:`3519`.- 6.59.0 - 2022-12-02 - The :obj:`AATTexample(...) ` 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 `__, 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 `__.- 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 2022 Dirk Müller - update to 6.56.2:
* This patch updates our vendored `list of top-level domains `__, 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 09 2022 Ben Greiner - 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 AATTexample()) 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 AATTjameslamb 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 AATTcomposite 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 AATTexample() 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 AATTexample and AATTgiven (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 AATTst.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 AATTgiven 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 2022 Ben Greiner - 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 AATTclassmethod or AATTstaticmethod 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 AATTexample 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 AATTgiven 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 AATTpytest.fixture to a function which has already been decorated with AATTgiven(). 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 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. AATTgiven(a=infer) is now equivalent to AATTgiven(a=...). Furthermore, AATTgiven(...) can now be specified so that AATTgiven 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 2022 Ben Greiner - 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 AATTst.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 2022 Matej Cepl - Correct exclusion of test_recursion_error_is_not_flaky for 3.10.
* Mon Jan 10 2022 Matej Cepl - 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 2021 Ben Greiner - 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 06 2021 Dirk Müller - fix requires
* Mon Dec 06 2021 Matej Cepl - Fix filelist
* Sun Dec 05 2021 Axel Braun - version 6.30.1 some tests skipped for python 3.6
* Sat Dec 04 2021 Axel Braun - update 6.30.0 tests/test_api disabled as recommended https://github.com/HypothesisWorks/hypothesis/issues/3178
* Sat Oct 23 2021 Axel Braun - update to 6.24.0
* Mon Jul 05 2021 Antonio Larrosa - Update to 6.14.1
* Full changelog since 6.8.1: https://hypothesis.readthedocs.io/en/latest/changes.html
* Sat Mar 20 2021 Ben Greiner - 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
 
ICM