Recent Releases of Hypothesis
Hypothesis - Hypothesis for Python - version 6.138.13
Fix a typo affecting pretty-printing of lambdas with complex default arguments.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.12
Improve automatic detection of the CI profile on various vendor- specific CI systems.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.11
This patch updates our vendored list of top-level domains, which is used by the provisional "domains()" strategy.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.10
Internal refactor to simplify "SearchStrategy".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.9
This patch further improves stringification of lambdas, by never returning a lambda source unless it is confirmed to compile to the same code object. This stricter check makes it possible to widen the search for a matching source block, so that it can often be found even if the file has been edited.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.8
Fixes a race condition under threading when using "deferred()".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.7
Improves upon the cache eviction problem workaround of v6.135.12.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.6
Documentation tweaks.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.5
Fixes a race condition under threading for strategies which trigger our filter-rewriting rules, like "st.integers().filter(lambda x: abs(x) > 100)".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.4
One of our shrinking passes for reducing failing inputs targets failures which require two numbers to add to the same value. This pass previously only worked for positive numbers. This patch fixes that, so it also works for negative numbers.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.3
This patch slightly improves the cache-hit rate for "dictionaries()" and certain unique "lists()".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 9 months ago
Hypothesis - Hypothesis for Python - version 6.138.2
The type annotations for "registertypestrategy()" now indicate that it accepts registering types created with "typing.TypeAliasType" (aka "type MyType = int").
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.138.1
Internal refactoring and cleanup. As a result, "hypothesis[black]" now requires "black>=20.8b0" instead of the previous "black>=19.10b0".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.138.0
On Python 3.14, "memoryview" is newly generic. This release adds the ability for "fromtype()" to resolve generic "memoryview" types on 3.14, like "st.fromtype(memoryview[CustomBufferClass])" . "CustomBufferClass" must implement "buffer", as expected by "memoryview".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.137.3
This patch makes the stringification of lambdas, and as a result certain automatic filter rewriting operations, more robust. This fixes issue #4498, where a lambda was mistakenly identified as the identity operator due to "inspect.getsource()" only returning the first line of the lambda definition.
As a result, the "repr" of strategies filtered or mapped by lambda functions may change slightly.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.137.2
Add support for Python 3.14, which is currently in release candidate 1.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.137.1
Fixes a bug with solver-based alternative backends (like crosshair) where symbolic values passed to "event()" would not be realized to concrete values at the end of the test case.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.137.0
Add the "addobservabilitycallback", "removeobservabilitycallback", "withobservabilitycallback", and "observabilityenabled" methods to the observability interface. The previous "TESTCASECALLBACKS" is deprecated.
This release also adds better threading support to observability callbacks. An observability callback will now only be called for observations generated by the same thread.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.9
Fix a threading race condition in "one_of()" initialization.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.8
Improve the error messages and documentation for "HealthCheck". Among others, the messaging is now more clear that health checks are proactive warnings, not correctness errors.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.7
Improve detection of sys.monitoring to avoid errors on GraalPy.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.6
When a test is executed concurrently from multiple threads, "HealthCheck.too_slow" is now disabled, since the Python runtime may decide to switch away from a thread for arbitrarily long and Hypothesis cannot track execution time per-thread.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.5
This patch updates our vendored list of top-level domains, which is used by the provisional "domains()" strategy.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.4
"HealthCheck.differingexecutors" is no longer raised if a test is executed by different executors from different threads. "HealthCheck.differingexecutors" will still be raised if a test is executed by different executors in the same thread.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.3
When a test is executed concurrently from multiple threads, "DeadlineExceeded" is now disabled, since the Python runtime may decide to switch away from a thread for longer than "settings.deadline", and Hypothesis cannot track execution time per- thread. See issue #4478.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.2
"@precondition" now errors if used without "@rule" or "@invariant". Doing so has no effect and is indicative of a user error (issue
4413).
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.1
Fix "on_observation()" being called with observations it wasn't responsible for generating if the test failed.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.136.0
When a failure found by an alternative backend does not reproduce under the Hypothesis backend, we now raise "FlakyBackendFailure" instead of an internal "FlakyReplay" exception.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 10 months ago
Hypothesis - Hypothesis for Python - version 6.135.33
Speculative fix for a thread-safety issue in calculating strategy labels.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.32
Improve the thread-safety of strategy validation.
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()" after this release.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.31
Fix a remaining thread-safety issue with the deprecation warning for use of the global random instance (see v6.135.24).
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.30
Fix a remaining thread-safety issue with the recursion limit warning Hypothesis issues when an outside caller sets "sys.setrecursionlimit" (see 6.135.23 - 2025-07-02).
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.29
Optimize performance of "sampled_from()" and internal selection of stateful testing rules.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.28
Optimize the memory and speed of an internal datastructure for compactly storing integers.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.27
Improve thread-safety for stateful "@initialize" rules.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.26
Fix a "dictionary changed size during iteration" error that could occur under with "register_random()" under multiple threads.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.25
Improve thread safety of our "sys.monitoring" usage (by the "Phase.shrink" and "Phase.explain" phases), as well as the internal computation of strategy labels.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.24
Makes the deprecation warning for using the global random instance thread-safe, as part of our work towards thread safety (issue #4451).
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.23
In order to de-flake "RecursionError" failures, Hypothesis sets a deterministic limit on "sys.setrecursionlimit". This patch makes the setting of this limit aware of uses by Hypothesis from multiple threads, so it does not produce spurious warnings in multithreaded environments.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.22
Improves the thread safety of caching strategy definitions, as well as usage of strategy transformations like ".map()" and ".filter()".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.21
Fix the thread safety of "@rule" definitions in "RuleBasedStateMachine".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.20
Fixes "reproduction_decorator" being missing under hypothesis-specific metadata in many observability observations, when it should have been present.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.19
Improve threading compatibility of an internal helper for managing deterministic rng seeding.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.18
Remove an internal assertion which could trigger if (1) a lambda was present in the source code of a test, (2) and the source code file was edited on disk between the start of the python process and when Hypothesis runs the property.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.17
Refactor some internals related to the shrinker for better compatibility with free-threading (issue #4451).
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.16
Fixes an error when the "pytest" module is present in "sys.modules", but not the "pytest.outcomes" or "pytest.fixtures" modules. This can happen with code that imports just "pytest", without importing "pytest".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.15
Temporarily disable the warning when "shared()" strategies with the same "key" draw from different base strategies, due to false alarms. Once we fix the false alarms in a future release, the warning will be re-enabled.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.14
Speed up usages of "sampledfrom()" by deferring evaluation of its repr, and truncating its repr for large collections (over 512 elements). This is especially noticeable when using "sampledfrom()" with large collections. The repr of "sampled_from()" strategies involving sequence classes with custom reprs may change as a result of this release.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.13
Fixes a substantial performance regression in stateful tests from computing string representations, present since version 6.131.20.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.12
Fix a rare race condition in internal cache eviction logic.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 11 months ago
Hypothesis - Hypothesis for Python - version 6.135.11
This patch fixes an error when importing our django extra (via "hypothesis.extra.django") if "django.contrib.auth" was not in "INSTALLED_APPS" (issue #3716).
Thanks to Chris Wesseling for this fix!
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.10
Fix a rare race condition in "fetch()", where we might have read from a non-existent directory.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.9
Refactor some internal code related to patches to make it easier to test.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.8
Add type hints to internal code for patching.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.7
Fixes a race condition in "add_listener()" for "DirectoryBasedExampleDatabase" after version 6.135.1 where the listener might have tried to read a file that doesn't exist.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.6
This patch corrects the f-string formatting of a few array-related error messages.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.5
Improve the error message when applying "@given" to a pytest fixture with pytest 8.4.0.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.4
Further improve the performance of the constants-collection feature introduced in version 6.131.1, by ignoring large files and files with many constants.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.3
This release adds the experimental and unstable "OBSERVABILITYCHOICES" option for observability. If set, the choice sequence is included in "metadata.choicenodes", and choice sequence spans are included in "metadata.choice_spans".
These are relatively low-level implementation detail of Hypothesis, and are exposed in observability for users building tools or research on top of Hypothesis. See "PrimitiveProvider" for more details about the choice sequence and choice spans.
We are actively working towards a better interface for this. Feel free to use "OBSERVABILITY_CHOICES" to experiment, but don't rely on it yet!
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.2
This patch restores compatibility when using the legacy Python 3.9 LL(1) parser yet again, because the fix in version 6.131.33 was too brittle.
Thanks to Marco Ricci for this fix!
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.1
"DirectoryBasedExampleDatabase" now removes empty directories after "delete()" is called.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.135.0
This release adds "runconformancetest()", for use in testing implementations of alternative backends.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.134.0
This patch adds "hypothesis.extra.django.SimpleTestCase" (issue #4117)
Thanks to Chris Wesseling for this contribution!
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.133.2
Internal changes to support hypofuzz.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.133.1
The "to_json" hook used internally when writing observability reports is now supported on nested dataclasses (in addition to outermost dataclasses).
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.133.0
Warn when "shared()" strategies with the same "key" draw from different base strategies. This could lead to subtle failures or lower-than-expected example coverage.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.132.0
Add "on_observation()" to the internal alternative backends interface.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.131.33
This patch restores compatibility when using the legacy Python 3.9 LL(1) parser, which was accidentally broken since version 6.130.13.
Thanks to Marco Ricci for this fix!
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.131.32
fuzzoneinput now writes observability reports if observability is enabled, bringing it in line with the behavior of other standard ways to invoke a Hypothesis test.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.131.31
Improve documentation of "@example".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD 12 months ago
Hypothesis - Hypothesis for Python - version 6.131.30
This patch resolves a Pandas FutureWarning (issue #4400) caused by indexing with an integer key.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.29
The observations passed to "TESTCASECALLBACKS" are now dataclasses, rather than dictionaries. The content written to ".hypothesis/observed" under "HYPOTHESISEXPERIMENTAL_OBSERVABILITY" remains the same.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.28
Add documentation to some internal APIs.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.27
Add "PrimitiveProvider.replay_choices" to the alternative backends interface, to support warm-starting e.g. hypothesis-crosshair from hypofuzz.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.26
Improve "ExampleDatabase" documentation.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.25
Add some internal type hints.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.24
Improve "@settings" documentation.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.23
This patch adds "GITLAB_CI" to the environment variables checked when enabling the default CI settings profile.
Thanks to Genevieve Mendoza for this contribution!
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.22
Include "note()" and "Phase.explain" output in the "representation" field of observability reports for failing examples, to more closely match the output produced by Hypothesis.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.21
"BackgroundWriteDatabase" instances now defer creating and starting a thread until first use.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.20
Improve the string representation of "characters()" in some cases.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.19
Cap the length of bytestrings collected as part of the constants- collection feature introduced in version 6.131.1, as long bytestrings are unlikely to be useful.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.18
All "ExampleDatabase" implementations in Hypothesis now implement "eq".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.17
Further improve the performance of the new features introduced in version 6.131.1, by improving unions of large sets.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.16
Improve performance of an internal method to count possible choices.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.15
Improves output when assigning values to multiple target bundles in a stateful rule (issue #4361).
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.14
Internal optimization to reduce redundant choice sequence spans.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.13
Add a "for_failure: bool = False" parameter to "provider.realize" in alternative backends, so that symbolic-based backends can increase their timeouts when realizing failures, which are more important than regular examples.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.12
Improve type hints for the single-argument form of "oneof()". "st.oneof(strategies)" now matches the type of "st.oneof(*strategies)". For instance, "st.oneof([st.integers(), st.none()])" now has the correct type of "SearchStrategy[int | None]" instead of "SearchStrategy[Any]".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.11
Fix incorrectly reporting alternative backends as unsound in some cases.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.10
Remove more false-positive locations from "Phase.explain" output, and add a new "metadata.reproduction_decorator" field in observability reports for failing examples.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.9
Fix a "BytesWarning" after version 6.131.1 if the source code used the same value in both a normal and binary string.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.8
"DirectoryBasedExampleDatabase" will now fall back to (potentially non-atomic) copies rather than renames, if the temporary directory used for atomic write-and-rename is on a different filesystem to the configured database location (issue #4335).
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.7
Further improve the performance of the new features introduced in version 6.131.1.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.6
This patch makes the new features introduced in version 6.131.1 much faster, and fixes an internal "RecursionError" when working with deeply-nested code.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.5
Fix a rare case where database entries were kept after they were no longer needed when using "Phase.target".
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.4
Internal refactoring of the "@settings" object, with no user-visible change.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.3
Fixes a rare internal error where new code from version 6.131.1 could fail if "sys.modules" is simultaneously modified, e.g. as a side effect of imports executed from another thread. Our Thread-Safety Policy does not promise that this is supported, but we're happy to take reasonable fixes.
Thanks to Tony Li for reporting and fixing this issue.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.2
The pub-sub change listening interface of the Hypothesis database now correctly fires events for "DirectoryBasedExampleDatabase" if the directory was created after the listener was added.
Also disables on emscripten the constants-extraction feature introduced in 6.131.1 - 2025-04-17, where it caused substantial slowdown.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago
Hypothesis - Hypothesis for Python - version 6.131.1
Hypothesis now looks for constant values in the source code of your program, and sometimes uses them while generating examples. This lets Hypothesis generate interesting inputs that are specific to your program.
The canonical version of these notes (with links) is on readthedocs.
Scientific Software - Peer-reviewed
- Python
Published by Zac-HD about 1 year ago