ac14ecf860- Update to 6.138.13 * text() now occasionally generates from a preselected list of strings which are likely to find bugs. * Improves input validation for several strategies in our pandas extra, so that they raise a helpful InvalidArgument rather than OverflowError. * New "hypothesis-urandom" backend, which draws randomness from /dev/urandom instead of Python’s PRNG. * randoms() no longer produces 1.0, matching the exclusive upper bound of random.Random.random * Nesting @given inside of @given is now a HealthCheck failure. * Add is_hypothesis_test(), for third-party libraries which want to determine whether a test has been defined with Hypothesis. * Add on_observation() to the internal alternative backends interface. * New hypothesis.extra.django.SimpleTestCase * New run_conformance_test(), for use in testing implementations of alternative backends. * Fixes a substantial performance regression in stateful tests from computing string representations, present since version 6.131.20. * Improves the thread safety of many functions and decorators. * Before this release, Hypothesis did not require that super().__init__() be called in SearchStrategy subclasses. Subclassing SearchStrategy is not supported or part of the public API, but if you are subclassing it anyway, you will need to make sure to call super().__init__(). * When a failure found by an alternative backend does not reproduce under the Hypothesis backend, we now raise FlakyBackendFailure. * When a test is executed concurrently from multiple threads, DeadlineExceeded is now disabled. * Add specified callback methods to the observability interface. The previous TESTCASE_CALLBACKS is deprecated. * Add support for Python 3.14.Nico Krapp2025-09-02 13:08:58 +00:00
6eb49ea2e1- Convert to libalternatives on SLE-16-based and newer systems onlyMarkéta Machová2025-08-21 08:33:41 +00:00
11273edd46- Update to 6.119.1 - This patch migrates some more internals (around generating novel inputs) to the IR layer (issue #3921). - Update to 6.119.0 - This release improves Hypothesis’ handling of ExceptionGroup - it’s now able to detect marker detections if they’re inside a group and attempts to resolve them. Note that this handling is still a work in progress and might not handle edge cases optimally. Please open issues if you encounter any problems or unexpected behavior with it. - Update to 6.118.9 - Internal refactorings in preparation for upcoming changes. - Update to 6.118.8 - Internal renamings. - Update to 6.118.7 - This patch removes some # type: ignore comments following a mypy update. - Update to 6.118.6 - When Hypothesis replays examples from its test database that it knows were previously fully shrunk it will no longer try to shrink them again. - This should significantly speed up development workflows for slow tests, as the shrinking could contribute a significant delay when rerunning the tests. - In some rare cases this may cause minor reductions in example quality. This was considered an acceptable tradeoff for the improved test runtime. - Update to 6.118.5 - This patch avoids computing some string representations we won’t need, giving a small speedup (part of issue #4139).Matej Cepl2024-11-16 16:49:30 +00:00
e682174b71Accepting request 1217328 from home:glaubitz:branches:devel:languages:pythonMatej Cepl2024-10-23 16:58:01 +00:00
3dff81dc12Accepting request 1206354 from home:mcalabkova:branches:devel:languages:pythonMatej Cepl2024-10-08 21:15:17 +00:00
cd922047a7Accepting request 1199122 from home:bnavigator:branches:devel:languages:python:numericDaniel Garcia2024-09-06 07:04:37 +00:00
2aa732e510Accepting request 1195137 from home:nkrapp:branches:devel:languages:pythonMarkéta Machová2024-08-30 10:46:59 +00:00
051e89cf41Accepting request 1191165 from home:mcalabkova:branches:devel:languages:pythonMatej Cepl2024-08-02 15:49:41 +00:00
47eb1c84d8- Disable complete tests for non-tumbleweed to avoid python-pandas requirementDaniel Garcia2024-07-29 11:17:29 +00:00
94fb987a24- update to 6.92.2: * updates vendored list of top-level domainsDirk Mueller2024-01-06 20:29:36 +00:00
0c289f0595- 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:@st.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 ignoredDirk Mueller2023-12-27 10:15:20 +00:00
a53eb8ad40- 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])Ondřej Súkup2023-11-01 15:22:24 +00:00
4b04aefafbAccepting request 1118040 from home:mimi_vx:branches:devel:languages:pythonDirk Mueller2023-10-16 22:19:23 +00:00
6c15f432a1Accepting request 1116915 from home:mimi_vx:branches:devel:languages:pythonMarkéta Machová2023-10-11 12:12:14 +00:00
465d9067f4Accepting request 1108226 from home:bnavigator:branches:devel:languages:pythonMarkéta Machová2023-08-31 10:17:27 +00:00
d2464b3130------------------------------------------------------------------ - 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.Dirk Mueller2023-08-14 07:08:47 +00:00
3be375c5b1- 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 numbersDirk Mueller2023-05-14 15:30:47 +00:00
bb19a4f556- 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).Daniel Garcia2023-05-10 16:33:33 +00:00
8551ff793eAccepting request 1081445 from home:dirkmueller:acdc:as_python3_moduleDirk Mueller2023-04-21 14:31:18 +00:00
7b8c12895aAccepting request 1066410 from home:dirkmueller:acdcMatej Cepl2023-02-17 16:55:10 +00:00
d1e7af94d3Accepting request 1056822 from home:bnavigator:branches:devel:languages:pythonSteve Kowalik2023-01-09 05:05:53 +00:00
f2d24d2d30- 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 noDaniel Garcia2022-12-15 06:51:57 +00:00
ca44547f1e- 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.Dirk Mueller2022-10-16 17:45:36 +00:00
74f2435244Accepting request 1009201 from home:bnavigator:branches:devel:languages:pythonDaniel Garcia2022-10-10 05:24:48 +00:00
9675953a63Accepting request 982468 from home:bnavigator:branches:devel:languages:pythonDirk Mueller2022-06-14 07:39:05 +00:00
3ff13d41cdAccepting request 963086 from home:bnavigator:branches:devel:languages:pythonMatej Cepl2022-03-19 23:02:39 +00:00
483959e724- Correct exclusion of test_recursion_error_is_not_flaky for 3.10.Matej Cepl2022-01-20 16:04:53 +00:00
e66867f8b5- Skip also test_recursion_error_is_not_flaky (gh#HypothesisWorks/hypothesis#3035)Matej Cepl2022-01-10 20:38:11 +00:00
7fc90e2b21- 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.Matej Cepl2022-01-10 20:28:02 +00:00
568edb6fe5Accepting request 940071 from home:bnavigator:branches:devel:languages:pythonMatej Cepl2021-12-14 13:03:46 +00:00
55a827aaaeAccepting request 826112 from home:bnavigator:branches:devel:languages:pythonMatej Cepl2020-08-14 21:42:04 +00:00
57405b4e11Accepting request 818622 from home:alarrosa:branches:devel:languages:pythonAntonio Larrosa2020-07-03 16:35:41 +00:00
871ef1725cAccepting request 818385 from home:alarrosa:branches:devel:languages:python
Tomáš Chvátal
2020-07-03 09:39:07 +00:00
a1bae1b53b- Add failing-test_array_values_are_unique_high_collision.patch to avoid failing test on i586 (gh#HypothesisWorks/hypothesis#2447)Matej Cepl2020-05-21 14:56:46 +00:00
7a7fdd8a5eAccepting request 802269 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2020-05-09 17:32:16 +00:00
508f1f5a93Accepting request 797684 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2020-04-25 17:00:42 +00:00
3cacc65039Accepting request 792740 from home:mcalabkova:branches:devel:languages:python
Tomáš Chvátal
2020-04-09 13:45:48 +00:00
68da69e617Accepting request 756672 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-12-13 08:25:59 +00:00
05ab55b24aAccepting request 754981 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-12-09 09:18:56 +00:00
a9e250960bAccepting request 750595 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-11-29 09:43:48 +00:00
3fef0d7badAccepting request 738905 from home:mcalabkova:branches:devel:languages:python
Tomáš Chvátal
2019-10-16 15:28:26 +00:00
715694d8f6Accepting request 725971 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-08-25 23:05:18 +00:00
436d57d445Accepting request 720887 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-08-04 17:01:28 +00:00
507e2757e3Accepting request 719415 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-07-29 08:41:40 +00:00
5558dbf786- Update to 4.28.2: * Various bugfixes and deprecations all around
Tomáš Chvátal
2019-07-22 13:12:41 +00:00
812634a3d3Accepting request 708789 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-06-10 08:15:30 +00:00
fe3e38ad36- 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()Ondřej Súkup2019-06-06 09:04:16 +00:00
37dcb7c657- 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.Ondřej Súkup2019-05-14 11:06:57 +00:00
83084aa143- Remove pandas dependency to make ring1 more happy - Update to 4.22.0: * Various small tweaks only
Tomáš Chvátal
2019-05-07 08:59:27 +00:00
d0682e8a4a- More love for the tests to make sure we execute and run them + skip/remove the obvious failures that are irelevant
Tomáš Chvátal
2019-05-06 09:40:58 +00:00
f13aef4af8- 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)
Tomáš Chvátal
2019-04-30 13:27:39 +00:00
990a28ed8aAccepting request 693827 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2019-04-15 09:42:32 +00:00
7840f298a5Accepting request 688117 from home:jayvdb:branches:devel:languages:python
Tomáš Chvátal
2019-03-25 08:42:00 +00:00
77e57b8ec9Accepting request 620077 from home:apersaud:branches:devel:languages:pythonMatej Cepl2018-07-01 21:23:01 +00:00
65044c82acAccepting request 618822 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2018-06-25 11:02:02 +00:00
815e3e08ceAccepting request 615030 from home:TheBlackCat:branches:devel:languages:python
Tomáš Chvátal
2018-06-07 18:15:11 +00:00
d1654ba2faAccepting request 613144 from home:TheBlackCat:branches:devel:languages:python
Tomáš Chvátal
2018-05-31 10:40:51 +00:00
7c995357e3Accepting request 583463 from home:aplanas:branches:devel:languages:python
Tomáš Chvátal
2018-03-06 20:51:11 +00:00
3194b745ceAccepting request 581943 from home:computersalat:devel:python
Tomáš Chvátal
2018-03-02 11:19:22 +00:00
92c8fb4a84Accepting request 580738 from home:aplanas:branches:devel:languages:pythonDirk Mueller2018-02-27 21:51:29 +00:00
1a28e58d3cupdate 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
Thomas Bechtold
2018-02-25 14:47:59 +00:00
1d89872046Accepting request 566974 from home:apersaud:branches:devel:languages:python
Tomáš Chvátal
2018-01-17 19:20:00 +00:00