Next | Query returned 141 messages, browsing 41 to 50 | Previous

History of commit frequency

CVS Commit History:


   2021-06-13 20:08:24 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: updated to 6.14.0

6.14.0 - 2021-06-09

The explain phase now requires shrinking to be enabled, and will be \ 
automatically skipped for deadline-exceeded errors.

6.13.14 - 2021-06-04

This patch improves the tuples() strategy type annotations, to preserve the \ 
element types for up to length-five tuples.

As for one_of(), this is the best we can do before a planned extension to PEP \ 
646 is released, hopefully in Python 3.11.

6.13.13 - 2021-06-04

This patch teaches the Ghostwriter how to find custom ufuncs from any module \ 
that defines them, and that yaml.unsafe_load() does not undo yaml.safe_load().

6.13.12 - 2021-06-03

This patch reduces the amount of internal code excluded from our test suite’s \ 
code coverage checks.

There is no user-visible change.

6.13.11 - 2021-06-02

This patch removes some old internal helper code that previously existed to make \ 
Python 2 compatibility easier.

There is no user-visible change.

6.13.10 - 2021-05-30

This release adjusts some internal code to help make our test suite more reliable.

There is no user-visible change.

6.13.9 - 2021-05-30

This patch cleans up some internal code related to filtering strategies.

There is no user-visible change.

6.13.8 - 2021-05-28

This patch slightly improves the performance of some internal code for \ 
generating integers.

6.13.7 - 2021-05-27

This patch fixes a bug in from_regex() that caused from_regex("", \ 
fullmatch=True) to unintentionally generate non-empty strings.

The only strings that completely match an empty regex pattern are empty strings.

6.13.6 - 2021-05-26

This patch fixes a bug that caused integers() to shrink towards negative values \ 
instead of positive values in some cases.

6.13.5 - 2021-05-24

This patch fixes rare cases where hypothesis write --binary-op could print \ 
reproducing instructions from the internal search for an identity element.

6.13.4 - 2021-05-24

This patch removes some unnecessary intermediate list-comprehensions, using the \ 
latest versions of pyupgrade and shed.

6.13.3 - 2021-05-23

This patch adds a .hypothesis property to invalid test functions, bringing them \ 
inline with valid tests and fixing a bug where pytest-asyncio would swallow the \ 
real error message and mistakenly raise a version incompatibility error.

6.13.2 - 2021-05-23

Some of Hypothesis’s numpy/pandas strategies use a fill argument to speed up \ 
generating large arrays, by generating a single fill value and sharing that \ 
value among many array slots instead of filling every single slot individually.

When no fill argument is provided, Hypothesis tries to detect whether it is OK \ 
to automatically use the elements argument as a fill strategy, so that it can \ 
still use the faster approach.

This patch fixes a bug that would cause that optimization to trigger in some \ 
cases where it isn’t 100% guaranteed to be OK.

If this makes some of your numpy/pandas tests run more slowly, try adding an \ 
explicit fill argument to the relevant strategies to ensure that Hypothesis \ 
always uses the faster approach.

6.13.1 - 2021-05-20

This patch strengthens some internal import-time consistency checks for the \ 
built-in strategies.

There is no user-visible change.

6.13.0 - 2021-05-18

This release adds URL fragment generation to the urls() strategy. Thanks to Pax \ 
(R. Margret) for contributing this patch at the PyCon US Mentored Sprints!

6.12.1 - 2021-05-17

This patch fixes issue 2964, where .map() and .filter() methods were omitted \ 
from the repr() of just() and sampled_from() strategies, since version 5.43.7.

6.12.0 - 2021-05-06

This release automatically rewrites some simple filters, such as \ 
integers().filter(lambda x: x > 9) to the more efficient \ 
integers(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 \ 
ideas about floats and simple text strategies.

6.11.0 - 2021-05-06

hypothesis.target() now returns the observation value, allowing it to be \ 
conveniently used inline in expressions such as assert target(abs(a - b)) < \ 
0.1.
   2021-05-04 10:10:53 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: update to 6.10.1.

6.10.1 - 2021-04-26

This patch fixes a deprecation warning if you’re using recent
versions of importlib-metadata (issue #2934), which we use to load
third-party plugins such as Pydantic’s integration. On older versions
of importlib-metadata, there is no change and you don’t need to
upgrade.
   2021-04-20 18:43:04 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: update to 6.10.0.

6.10.0 - 2021-04-17

This release teaches the Ghostwriter to read parameter types from
Sphinx, Google, or Numpy-style structured docstrings, and improves
some related heuristics about how to test scientific and numerical
programs.

6.9.2 - 2021-04-15

This release improves the Ghostwriter’s handling of exceptions, by
reading :raises ...: entries in function docstrings and ensuring
that we don’t suppresss the error raised by test assertions.

6.9.1 - 2021-04-12

This patch updates our autoformatting tools, improving our code
style without any API changes.

6.9.0 - 2021-04-11

This release teaches from_type() how to see through typing.Annotated.
Thanks to Vytautas Strimaitis for reporting and fixing issue #2919!

6.8.12 - 2021-04-11

If rich is installed, the hypothesis write command will use it to
syntax-highlight the Ghostwritten code.

6.8.11 - 2021-04-11

This patch improves an error message from from_type() when builds()
would be more suitable (issue #2930).

6.8.10 - 2021-04-11

This patch updates the type annotations for arrays() to reflect
that shape: SearchStrategy[int] is supported.

6.8.9 - 2021-04-07

This patch fixes from_type() with abstract types which have either
required but non-type-annotated arguments to __init__, or where
from_type() can handle some concrete subclasses but not others.

6.8.8 - 2021-04-07

This patch teaches hypothesis write to check for possible roundtrips
in several more cases, such as by looking for an inverse in the
module which defines the function to test.

6.8.7 - 2021-04-07

This patch adds a more helpful error message if you try to call
sampled_from() on an Enum which has no members, but does have
dataclass()-style annotations (issue #2923).
   2021-04-07 08:23:52 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: updated to 6.8.6

6.8.6 - 2021-04-06

The fixed_dictionaries() strategy now preserves dict iteration order instead of \ 
sorting the keys. This also affects the pretty-printing of keyword arguments to \ 
@given().

6.8.5 - 2021-04-05

This patch teaches hypothesis write to default to ghostwriting tests with \ 
--style=pytest only if pytest is installed, or --style=unittest otherwise.

6.8.4 - 2021-04-01

This patch adds type annotations for the settings decorator, to avoid an error \ 
when running mypy in strict mode.

6.8.3 - 2021-03-28

This patch improves the Ghostwriter’s handling of strategies to generate \ 
various fiddly types including frozensets, keysviews, valuesviews, regex matches \ 
and patterns, and so on.

6.8.2 - 2021-03-27

This patch fixes some internal typos. There is no user-visible change.
   2021-03-17 14:13:32 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-hypothesis: update to 6.8.1.

6.8.1 - 2021-03-14

This patch lays more groundwork for filter rewriting (issue #2701).
There is no user-visible change… yet.

6.8.0 - 2021-03-11

This release registers the remaining builtin types, and teaches
from_type() to try resolving ForwardRef and Type references to
built-in types.

6.7.0 - 2021-03-10

This release teaches RuleBasedStateMachine to avoid checking
invariant()s until all initialize() rules have been run. You can
enable checking of specific invariants for incompletely initialized
machines by using @invariant(check_during_init=True) (issue #2868).

In previous versions, it was possible if awkward to implement this
behaviour using precondition() and an auxiliary variable.

6.6.1 - 2021-03-09

This patch improves the error message when from_type() fails to
resolve a forward-reference inside a typing.Type such as Type["int"]
(issue #2565).

6.6.0 - 2021-03-07

This release makes it an explicit error to apply invariant() to a
rule() or initialize() rule in stateful testing. Such a combination
had unclear semantics, especially in combination with precondition(),
and was never meant to be allowed (issue #2681).

6.5.0 - 2021-03-07

This release adds the explain phase, in which Hypothesis attempts
to explain why your test failed by pointing to suspicious lines of
code (i.e. those which were always, and only, run on failing inputs).
We plan to include “generalising” failing examples in this phase
in a future release (issue #2192).

6.4.3 - 2021-03-04

This patch fixes issue #2794, where nesting deferred() strategies
within recursive() strategies could trigger an internal assertion.
While it was always possible to get the same results from a more
sensible strategy, the convoluted form now works too.

6.4.2 - 2021-03-04

This patch fixes several problems with mypy when –no-implicit-reexport
was activated in user projects.

Thanks to Nikita Sobolev for fixing issue #2884!

6.4.1 - 2021-03-04

This patch fixes an exception that occurs when using type unions
of the typing_extensions Literal backport on Python 3.6.

Thanks to Ben Anhalt for identifying and fixing this bug.

6.4.0 - 2021-03-02

This release fixes stateful testing methods with multiple precondition()
decorators. Previously, only the outer-most precondition was checked
(issue #2681).

6.3.4 - 2021-02-28

This patch refactors some internals of RuleBasedStateMachine. There
is no change to the public API or behaviour.

6.3.3 - 2021-02-26

This patch moves some internal code, so that future work can avoid
creating import cycles. There is no user-visible change.

6.3.2 - 2021-02-25

This patch enables register_type_strategy() for subclasses of
typing.TypedDict. Previously, from_type() would ignore the registered
strategy (issue #2872).

Thanks to Ilya Lebedev for identifying and fixing this bug!

6.3.1 - 2021-02-24

This release lays the groundwork for automatic rewriting of simple
filters, for example converting integers().filter(lambda x: x > 9)
to integers(min_value=10).

Note that this is not supported yet, and we will continue to
recommend writing the efficient form directly wherever possible -
predicate rewriting is provided mainly for the benefit of downstream
libraries which would otherwise have to implement it for themselves
(e.g. pandera and icontract-hypothesis). See issue #2701 for details.

6.3.0 - 2021-02-20

The Hypothesis pytest plugin now requires pytest version 4.6 or
later. If the plugin detects an earlier version of pytest, it will
automatically deactivate itself.

(4.6.x is the earliest pytest branch that still accepts community
bugfixes.)

Hypothesis-based tests should continue to work in earlier versions
of pytest, but enhanced integrations provided by the plugin (such
as --hypothesis-show-statistics and other command-line flags) will
no longer be available in obsolete pytest versions.
   2021-02-18 11:31:27 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: update to 6.2.0.

6.2.0 - 2021-02-12

If you use pytest-html, Hypothesis now includes the summary statistics
for each test in the HTML report, whether or not the
--hypothesis-show-statistics argument was passed to show them in
the command-line output.
   2021-02-04 12:15:16 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: update to 6.1.1.

6.1.1 - 2021-01-31

This patch updates our automatic code formatting to use shed, which includes \ 
autoflake, black, isort, and pyupgrade (issue #2780).

6.1.0 - 2021-01-29

This release teaches Hypothesis to distinguish between errors based on the \ 
__cause__ or __context__ of otherwise identical exceptions, which is \ 
particularly useful when internal errors can be wrapped by a library-specific or \ 
semantically appropriate exception such as:

try:
    do_the_thing(foo, timeout=10)
except Exception as err:
    raise FooError("Failed to do the thing") from err

Earlier versions of Hypothesis only see the FooError, while we can now \ 
distinguish a FooError raised because of e.g. an internal assertion from one \ 
raised because of a TimeoutExceeded exception.

6.0.4 - 2021-01-27

This release prevents a race condition inside recursive() strategies. The race \ 
condition occurs when the same recursive() strategy is shared among tests that \ 
are running in multiple threads (issue #2717).
   2021-01-25 11:08:58 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: update to 6.0.3.

6.0.3 - 2021-01-23

This patch improves the type annotations for one_of(), by adding
overloads to handle up to five distinct arguments as typing.Union
before falling back to typing.Any, as well as annotating the |
(__or__) operator for strategies (issue #2765).

6.0.2 - 2021-01-14

This release makes some small improvements to how filtered strategies
work. It should improve the performance of shrinking filtered
strategies, and may under some (probably rare) circumstances improve
the diversity of generated examples.
   2021-01-13 12:50:46 by Thomas Klausner | Files touched by this commit (2) | Package updated
Log message:
py-hypothesis: update to 6.0.1.

6.0.1 - 2021-01-13

This patch fixes an interaction where our test statistics handling
made Pytest’s --junit-xml output fail to validate against the strict
xunit2 schema (issue #1975).

6.0.0 - 2021-01-08

Welcome to the next major version of Hypothesis!

There are no new features here, as we release those in minor
versions. Instead, 6.0 is a chance for us to remove deprecated
features (many already converted into no-ops), and turn a variety
of warnings into errors.

If you were running on the last version of Hypothesis 5.x without
any Hypothesis deprecation warnings, this will be a very boring
upgrade. In fact, nothing will change for you at all.

Changes

    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.

Tip

The hypothesis codemod command can automatically refactor your
code, particularly to convert positional to keyword arguments where
those are now required.

Hypothesis 5.x

5.49.0 - 2021-01-07

This release adds the function_scoped_fixture health check value,
which can be used to suppress the existing warning that appears
when @given is applied to a test that uses pytest function-scoped
fixtures.

(This warning exists because function-scoped fixtures only run once
per function, not once per example, which is usually unexpected
and can cause subtle problems.)

When this warning becomes a health check error in a future release,
suppressing it via Python warning settings will no longer be
possible. In the rare case that once-per-function behaviour is
intended, it will still be possible to use function_scoped_fixture
to opt out of the health check error for specific tests.

5.48.0 - 2021-01-06

This release adds hypothesis.currently_in_test_context(), which
can be used to check whether the calling code is currently running
inside an @given or stateful test.

This is most useful for third-party integrations and assertion
helpers which may wish to use assume() or target(), without also
requiring that the helper only be used from property-based tests
(issue #2581).

5.47.0 - 2021-01-05

This release upgrades the import logic for ghostwritten tests,
handling many cases where imports would previously be missing or
from unexpected locations.
   2021-01-04 12:55:03 by Thomas Klausner | Files touched by this commit (3) | Package updated
Log message:
py-hypothesis: update to 5.46.0.

5.46.0 - 2021-01-04

This release upgrades from_type(), to infer strategies for
type-annotated arguments even if they have defaults when it otherwise
falls back to builds() (issue #2708).

5.45.0 - 2021-01-04

This release adds the hypothesis[codemods] extra, which you can
use to check for and automatically fix issues such as use of
deprecated Hypothesis APIs (issue #2705).

5.44.0 - 2021-01-03

This patch fixes from_type() with the typing_extensions Literal
backport on Python 3.6.

5.43.9 - 2021-01-02

This patch fixes issue #2722, where certain orderings of
register_type_strategy(), ForwardRef, and from_type() could trigger
an internal error.

5.43.8 - 2021-01-02

This patch makes some strategies for collections with a uniqueness
constraint much more efficient, including
dictionaries(keys=sampled_from(...), values=..) and
lists(tuples(sampled_from(...), ...), unique_by=lambda x: x[0]).
(related to issue #2036)

5.43.7 - 2021-01-02

This patch extends our faster special case for sampled_from()
elements in unique lists() to account for chains of .map(...) and
.filter(...) calls (issue #2036).

5.43.6 - 2021-01-02

This patch improves the type annotations on assume() and
@reproduce_failure().

5.43.5 - 2021-01-01

This patch updates our copyright headers to include 2021. Happy
new year!

5.43.4 - 2020-12-24

This change fixes a documentation error in the database setting.

The previous documentation suggested that callers could specify a
database path string, or the special string ":memory:", but this
setting has never actually allowed string arguments.

Permitted values are None, and instances of ExampleDatabase.

5.43.3 - 2020-12-11

This patch fixes issue #2696, an internal error triggered when the
@example decorator was used and the verbosity setting was quiet.

5.43.2 - 2020-12-10

This patch improves the error message from the data_frames() strategy
when both the rows and columns arguments are given, but there is
a missing entry in rows and the corresponding column has no fill
value (issue #2678).

5.43.1 - 2020-12-10

This patch improves the error message if builds() is passed an Enum
which cannot be called without arguments, to suggest using
sampled_from() (issue #2693).

5.43.0 - 2020-12-09

This release adds new timezones() and timezone_keys() strategies
(issue #2630) based on the new zoneinfo module in Python 3.9.

pip install hypothesis[zoneinfo] will ensure that you have the
appropriate backports installed if you need them.

Next | Query returned 141 messages, browsing 41 to 50 | Previous