This patch teaches the :func:`~hypothesis.extra.ghostwriter.magic` ghostwriter to recognise "en/de" function roundtrips other than the common encode/decode pattern, such as encrypt/decrypt or, encipher/decipher.
5.41.5
Not secure
-------------------
This patch adds a performance optimisation to avoid saving redundant seeds when using :ref:`the .fuzz_one_input hook <fuzz_one_input>`.
5.41.4
Not secure
-------------------
This patch fixes :issue:`2657`, where passing unicode patterns compiled with :obj:`python:re.IGNORECASE` to :func:`~hypothesis.strategies.from_regex` could trigger an internal error when casefolding a character creates a longer string (e.g. ``"\u0130".lower() -> "i\u0370"``).
5.41.3
Not secure
-------------------
This patch adds a final fallback clause to :ref:`our plugin logic <entry-points>` to fail with a warning rather than error on Python < 3.8 when neither the :pypi:`importlib_metadata` (preferred) or :pypi:`setuptools` (fallback) packages are available.
5.41.2
Not secure
-------------------
This patch fixes :func:`~hypothesis.provisional.urls` strategy ensuring that ``~`` (tilde) is treated as one of the url-safe characters (:issue:`2658`).
5.41.1
Not secure
-------------------
This patch improves our :ref:`CLI help and documentation <hypothesis-cli>`.