Skip to content

Upgrading hypothesis 4 to 5

Unknown4.57.1 → 5.49.0

Fetching 153 releases from GitHub…0 / 153
UnknownUpgrade verdict

DepDelta is still reading the notes for this range, so breaking changes can't be ruled out yet.

  • DepDelta is still reading the release notes in this range, so it can't rule out breaking changes yet.
  • This page updates as the notes come in.
Still reading release notes

DepDelta is still reading the release notes in this range. This updates as they come in.

Python requirement changed in 5.34.0: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.* → >=3.6.

Generated by DepDelta from published Python source. Not mixed with prose notes.

  • removed: export PrintSettings
  • removed: export unlimited
  • added: export currently_in_test_context
  • changed: class BuildContext(object) → class BuildContext
  • changed: function assume(condition) → function assume(condition: object) -> bool
  • changed: function event(value) → function event(value: str) -> None
  • changed: function note(value) → function note(value: str) -> None
  • changed: function reject() → function reject() -> NoReturn
  • changed: function target(observation, label=…) → function target(observation: Union[int, float], *, label: str=…) -> None
  • added: function currently_in_test_context() -> bool
  • added: function should_note()
  • changed: class Example(object) → class Example
  • changed: class HypothesisHandle(object) → class HypothesisHandle
  • changed: class StateForActualGivenExecution(object) → class StateForActualGivenExecution
  • changed: function example(*args, **kwargs) → function example(*args: Any, **kwargs: Any) -> Callable[[TestFunc], TestFunc]
  • changed: function find(specifier, condition, settings=…, random=…, database_key=…) → function find(specifier: SearchStrategy[Ex], condition: Callable[[Any], bool], *, settings: Optional[Settings]=…, random: Optional[Random]=…, database_key: Optional[bytes]=…) -> Ex
  • changed: function given(*_given_arguments, **_given_kwargs) → function given(*_given_arguments: Union[SearchStrategy, InferType], **_given_kwargs: Union[SearchStrategy, InferType]) -> Callable[[Callable[..., None]], Callable[..., None]]
  • changed: function process_arguments_to_given(wrapped_test, arguments, kwargs, given_kwargs, argspec, test, settings) → function process_arguments_to_given(wrapped_test, arguments, kwargs, given_kwargs, argspec)
  • changed: function reproduce_failure(version, blob) → function reproduce_failure(version: str, blob: bytes) -> Callable[[TestFunc], TestFunc]
  • changed: function seed(seed) → function seed(seed: Hashable) -> Callable[[TestFunc], TestFunc]
  • added: property HypothesisHandle.fuzz_one_input -> Callable[[Union[bytes, bytearray, memoryview, BinaryIO]], Optional[bytes]]
  • removed: class EDMeta(type)
  • removed: method DirectoryBasedExampleDatabase.close()
  • removed: method ExampleDatabase.close()
  • removed: method InMemoryExampleDatabase.close()
  • changed: class ExampleDatabase(EDMeta('ExampleDatabase', (object,), {})) → class ExampleDatabase
  • changed: constructor DirectoryBasedExampleDatabase(path) → constructor DirectoryBasedExampleDatabase(path: str) -> None
  • changed: method DirectoryBasedExampleDatabase.delete(key, value) → method DirectoryBasedExampleDatabase.delete(key: bytes, value: bytes) -> None
  • changed: method DirectoryBasedExampleDatabase.fetch(key) → method DirectoryBasedExampleDatabase.fetch(key: bytes) -> Iterable[bytes]
  • changed: method DirectoryBasedExampleDatabase.move(src, dest, value) → method DirectoryBasedExampleDatabase.move(src: bytes, dest: bytes, value: bytes) -> None
  • changed: method DirectoryBasedExampleDatabase.save(key, value) → method DirectoryBasedExampleDatabase.save(key: bytes, value: bytes) -> None
  • changed: method ExampleDatabase.delete(key, value) → method ExampleDatabase.delete(key: bytes, value: bytes) -> None
  • changed: method ExampleDatabase.fetch(key) → method ExampleDatabase.fetch(key: bytes) -> Iterable[bytes]
  • changed: method ExampleDatabase.move(src, dest, value) → method ExampleDatabase.move(src: bytes, dest: bytes, value: bytes) -> None
  • changed: method ExampleDatabase.save(key, value) → method ExampleDatabase.save(key: bytes, value: bytes) -> None
  • changed: method InMemoryExampleDatabase.delete(key, value) → method InMemoryExampleDatabase.delete(key: bytes, value: bytes) -> None
  • changed: method InMemoryExampleDatabase.fetch(key) → method InMemoryExampleDatabase.fetch(key: bytes) -> Iterable[bytes]
  • changed: method InMemoryExampleDatabase.save(key, value) → method InMemoryExampleDatabase.save(key: bytes, value: bytes) -> None
  • added: class MultiplexedDatabase(ExampleDatabase)
  • added: class ReadOnlyDatabase(ExampleDatabase)
  • added: constructor MultiplexedDatabase(*dbs: ExampleDatabase) -> None
  • added: constructor ReadOnlyDatabase(db: ExampleDatabase) -> None
  • added: method MultiplexedDatabase.delete(key: bytes, value: bytes) -> None
  • added: method MultiplexedDatabase.fetch(key: bytes) -> Iterable[bytes]
  • added: method MultiplexedDatabase.move(src: bytes, dest: bytes, value: bytes) -> None
  • added: method MultiplexedDatabase.save(key: bytes, value: bytes) -> None
  • added: method ReadOnlyDatabase.delete(key: bytes, value: bytes) -> None
  • added: method ReadOnlyDatabase.fetch(key: bytes) -> Iterable[bytes]
  • added: method ReadOnlyDatabase.save(key: bytes, value: bytes) -> None
  • added: function get_entry_points()
  • added: function run()
  • changed: class ConjectureRunner(object) → class ConjectureRunner
  • added: function codemod(path)
  • added: function main()
  • added: function obj_name(s: str) -> object
  • added: function write(func, writer, except_, style)
  • added: variable MESSAGE
  • added: class HypothesisFixComplexMinMagnitude(VisitorBasedCodemodCommand)
  • added: class HypothesisFixPositionalKeywonlyArgs(VisitorBasedCodemodCommand)
  • added: field HypothesisFixComplexMinMagnitude.DESCRIPTION
  • added: field HypothesisFixComplexMinMagnitude.METADATA_DEPENDENCIES
  • added: field HypothesisFixPositionalKeywonlyArgs.DESCRIPTION
  • added: field HypothesisFixPositionalKeywonlyArgs.METADATA_DEPENDENCIES
  • added: field HypothesisFixPositionalKeywonlyArgs.kwonly_functions
  • added: function match_qualname(name)
  • added: function refactor(code: str) -> str
  • added: method HypothesisFixComplexMinMagnitude.leave_Arg(original_node, updated_node)
  • added: method HypothesisFixPositionalKeywonlyArgs.leave_Call(original_node, updated_node)
  • changed: function timezones() → function timezones() -> st.SearchStrategy[dt.tzinfo]
  • removed: function add_default_field_mapping(field_type, strategy)
  • removed: function models(model, **field_strategies)
  • removed: variable default_value
  • added: function binary_operation(func: Callable[[X, X], Y], *, associative: bool=…, commutative: bool=…, identity: Union[X, InferType, None]=…, distributes_over: Optional[Callable[[X, X], X]]=…, except_: Except=…, style: str=…) -> str
  • added: function equivalent(*funcs: Callable, except_: Except=…, style: str=…) -> str
  • added: function fuzz(func: Callable, *, except_: Except=…, style: str=…) -> str
  • added: function idempotent(func: Callable, *, except_: Except=…, style: str=…) -> str
  • added: function magic(*modules_or_functions: Union[Callable, types.ModuleType], except_: Except=…, style: str=…) -> str
  • added: function roundtrip(*funcs: Callable, except_: Except=…, style: str=…) -> str
  • added: function ufunc(func: Callable, *, except_: Except=…, style: str=…) -> str
  • added: variable Except
  • added: variable IMPORT_SECTION
  • added: variable KNOWN_FUNCTION_LOCATIONS: Dict[object, str]
  • added: variable LOOK_FOR_UFUNCS_IN_MODULES
  • added: variable ROUNDTRIP_PAIRS
  • added: variable SUPPRESS_BLOCK
  • added: variable TEMPLATE
  • added: variable X
  • added: variable Y
  • changed: function from_lark(grammar, start=…, explicit=…) → function from_lark(grammar: lark.lark.Lark, *, start: Optional[str]=…, explicit: Optional[Dict[str, st.SearchStrategy[str]]]=…) -> st.SearchStrategy[str]
  • removed: variable BroadcastableShapes
  • changed: function array_dtypes(subtype_strategy=…, min_size=…, max_size=…, allow_subarrays=…) → function array_dtypes(subtype_strategy: st.SearchStrategy[np.dtype]=…, *, min_size: int=…, max_size: int=…, allow_subarrays: bool=…) -> st.SearchStrategy[np.dtype]
  • changed: function array_shapes(min_dims=…, max_dims=…, min_side=…, max_side=…) → function array_shapes(*, min_dims: int=…, max_dims: Optional[int]=…, min_side: int=…, max_side: Optional[int]=…) -> st.SearchStrategy[Shape]
  • changed: function arrays(dtype, shape, elements=…, fill=…, unique=…) → function arrays(dtype: Any, shape: Union[int, Shape, st.SearchStrategy[Shape]], *, elements: Optional[Union[SearchStrategy, Mapping[str, Any]]]=…, fill: Optional[st.SearchStrategy[Any]]=…, unique: bool=…) -> st.SearchStrategy[np.ndarray]
  • changed: function basic_indices(shape, __reserved=…, min_dims=…, max_dims=…, allow_newaxis=…, allow_ellipsis=…) → function basic_indices(shape: Shape, *, min_dims: int=…, max_dims: Optional[int]=…, allow_newaxis: bool=…, allow_ellipsis: bool=…) -> st.SearchStrategy[BasicIndex]
  • changed: function boolean_dtypes() → function boolean_dtypes() -> st.SearchStrategy[np.dtype]
  • changed: function broadcastable_shapes(shape, min_dims=…, max_dims=…, min_side=…, max_side=…) → function broadcastable_shapes(shape: Shape, *, min_dims: int=…, max_dims: Optional[int]=…, min_side: int=…, max_side: Optional[int]=…) -> st.SearchStrategy[Shape]
  • changed: function byte_string_dtypes(endianness=…, min_len=…, max_len=…) → function byte_string_dtypes(*, endianness: str=…, min_len: int=…, max_len: int=…) -> st.SearchStrategy[np.dtype]
  • changed: function complex_number_dtypes(endianness=…, sizes=…) → function complex_number_dtypes(*, endianness: str=…, sizes: Sequence[int]=…) -> st.SearchStrategy[np.dtype]
  • changed: function datetime64_dtypes(max_period=…, min_period=…, endianness=…) → function datetime64_dtypes(*, max_period: str=…, min_period: str=…, endianness: str=…) -> st.SearchStrategy[np.dtype]
  • changed: function defines_dtype_strategy(strat) → function defines_dtype_strategy(strat: T) -> T
  • changed: function floating_dtypes(endianness=…, sizes=…) → function floating_dtypes(*, endianness: str=…, sizes: Sequence[int]=…) -> st.SearchStrategy[np.dtype]
  • changed: function from_dtype(dtype) → function from_dtype(dtype: np.dtype, *, alphabet: Optional[st.SearchStrategy[str]]=…, min_size: int=…, max_size: Optional[int]=…, min_value: Union[int, float, None]=…, max_value: Union[int, float, None]=…, allow_nan: Optional[bool]=…, allow_infinity: Optional[bool]=…, exclude_min: Optional[bool]=…, exclude_max: Optional[bool]=…) -> st.SearchStrategy[Any]
  • changed: function integer_array_indices(shape, result_shape=…, dtype=…) → function integer_array_indices(shape: Shape, *, result_shape: SearchStrategy[Shape]=…, dtype: np.dtype=…) -> st.SearchStrategy[Tuple[np.ndarray, ...]]
  • changed: function integer_dtypes(endianness=…, sizes=…) → function integer_dtypes(*, endianness: str=…, sizes: Sequence[int]=…) -> st.SearchStrategy[np.dtype]
  • changed: function mutually_broadcastable_shapes(__reserved=…, num_shapes=…, signature=…, base_shape=…, min_dims=…, max_dims=…, min_side=…, max_side=…) → function mutually_broadcastable_shapes(*, num_shapes: Union[UniqueIdentifier, int]=…, signature: Union[UniqueIdentifier, str]=…, base_shape: Shape=…, min_dims: int=…, max_dims: Optional[int]=…, min_side: int=…, max_side: Optional[int]=…) -> st.SearchStrategy[BroadcastableShapes]
  • changed: function nested_dtypes(subtype_strategy=…, max_leaves=…, max_itemsize=…) → function nested_dtypes(subtype_strategy: st.SearchStrategy[np.dtype]=…, *, max_leaves: int=…, max_itemsize: Optional[int]=…) -> st.SearchStrategy[np.dtype]
  • changed: function scalar_dtypes() → function scalar_dtypes() -> st.SearchStrategy[np.dtype]
  • changed: function timedelta64_dtypes(max_period=…, min_period=…, endianness=…) → function timedelta64_dtypes(*, max_period: str=…, min_period: str=…, endianness: str=…) -> st.SearchStrategy[np.dtype]
  • changed: function unicode_string_dtypes(endianness=…, min_len=…, max_len=…) → function unicode_string_dtypes(*, endianness: str=…, min_len: int=…, max_len: int=…) -> st.SearchStrategy[np.dtype]
  • changed: function unsigned_integer_dtypes(endianness=…, sizes=…) → function unsigned_integer_dtypes(*, endianness: str=…, sizes: Sequence[int]=…) -> st.SearchStrategy[np.dtype]
  • changed: function valid_tuple_axes(ndim, min_size=…, max_size=…) → function valid_tuple_axes(ndim: int, *, min_size: int=…, max_size: Optional[int]=…) -> st.SearchStrategy[Shape]
  • added: class BroadcastableShapes(NamedTuple)
  • added: field BroadcastableShapes.input_shapes: Tuple[Shape, ...]
  • added: field BroadcastableShapes.result_shape: Shape
  • changed: class column(object) → class column
  • changed: function columns(names_or_number, dtype=…, elements=…, fill=…, unique=…) → function columns(names_or_number: Union[int, Sequence[str]], *, dtype: Any=…, elements: Optional[st.SearchStrategy[Ex]]=…, fill: Optional[st.SearchStrategy[Ex]]=…, unique: bool=…) -> List[column]
  • changed: function data_frames(columns=…, rows=…, index=…) → function data_frames(columns: Optional[Sequence[column]]=…, *, rows: Optional[st.SearchStrategy[Union[dict, Sequence[Any]]]]=…, index: Optional[st.SearchStrategy[Ex]]=…) -> st.SearchStrategy[pandas.DataFrame]
  • changed: function indexes(elements=…, dtype=…, min_size=…, max_size=…, unique=…) → function indexes(*, elements: Optional[st.SearchStrategy[Ex]]=…, dtype: Any=…, min_size: int=…, max_size: Optional[int]=…, unique: bool=…) -> st.SearchStrategy[pandas.Index]
  • changed: function range_indexes(min_size=…, max_size=…) → function range_indexes(min_size: int=…, max_size: Optional[int]=…) -> st.SearchStrategy[pandas.RangeIndex]
  • changed: function series(elements=…, dtype=…, index=…, fill=…, unique=…) → function series(*, elements: Optional[st.SearchStrategy[Ex]]=…, dtype: Any=…, index: Optional[st.SearchStrategy[Union[Sequence, pandas.Index]]]=…, fill: Optional[st.SearchStrategy[Ex]]=…, unique: bool=…) -> st.SearchStrategy[pandas.Series]
  • changed: class StoringReporter(object) → class StoringReporter
  • changed: function timezones() → function timezones() -> st.SearchStrategy[dt.tzinfo]
  • added: class RedisExampleDatabase(ExampleDatabase)
  • added: constructor RedisExampleDatabase(redis: Redis, *, expire_after: timedelta=…, key_prefix: bytes=…)
  • added: method RedisExampleDatabase.delete(key: bytes, value: bytes) -> None
  • added: method RedisExampleDatabase.fetch(key: bytes) -> Iterable[bytes]
  • added: method RedisExampleDatabase.move(src: bytes, dest: bytes, value: bytes) -> None
  • added: method RedisExampleDatabase.save(key: bytes, value: bytes) -> None
  • changed: class Entry(object) → class Entry
  • changed: class GenericCache(object) → class GenericCache
  • removed: class compatbytes(bytearray)
  • removed: constructor compatbytes(*args, **kwargs)
  • removed: function accumulate(iterable, func=…)
  • removed: function array_or_list(code, contents)
  • removed: function b64decode(s)
  • removed: function benchmark_time()
  • removed: function encoded_filepath(filepath)
  • removed: function getfullargspec(func)
  • removed: function hrange(start_or_finish, finish=…, step=…)
  • removed: function implements_iterator(it)
  • removed: function int_to_text(i)
  • removed: function isidentifier(s)
  • removed: function print_unicode(x)
  • removed: function quiet_raise(exc)
  • removed: function struct_pack(*args)
  • removed: function struct_unpack(fmt, string)
  • removed: function to_bytes_sequence(ls)
  • removed: function to_str(s)
  • removed: function unicode_safe_repr(x)
  • removed: method compatbytes.count(value)
  • removed: method compatbytes.index(value)
  • removed: method compatbytes.join(parts)
  • removed: variable ARG_NAME_ATTRIBUTE
  • removed: variable CAN_PACK_HALF_FLOAT
  • removed: variable CAN_UNPACK_BYTE_ARRAY
  • removed: variable CODE_FIELD_ORDER
  • removed: variable EMPTY_BYTES
  • removed: variable FullArgSpec
  • removed: variable LIST_CODES
  • removed: variable PY2
  • removed: variable PY3
  • removed: variable VALID_PYTHON_IDENTIFIER
  • removed: variable binary_type
  • removed: variable hbytes
  • removed: variable hrange
  • removed: variable hunichr
  • removed: variable int_to_byte
  • removed: variable integer_types
  • removed: variable reasonable_byte_type
  • removed: variable string_types
  • removed: variable struct_pack
  • removed: variable struct_unpack
  • removed: variable text_type
  • added: function is_typed_named_tuple(cls)
  • changed: class ChoiceTree(object) → class ChoiceTree
  • changed: class Chooser(object) → class Chooser
  • changed: class TreeNode(object) → class TreeNode
  • changed: constructor Chooser(tree, prefix) → constructor Chooser(tree, selection_order)
  • changed: method ChoiceTree.step(prefix, f) → method ChoiceTree.step(selection_order, f)
  • added: function prefix_selection_order(prefix)
  • added: function random_selection_order(random)
  • changed: class Block(object) → class Block
  • changed: class Blocks(object) → class Blocks
  • changed: class ConjectureData(object) → class ConjectureData
  • changed: class ConjectureResult(object) → class ConjectureResult
  • changed: class DataObserver(object) → class DataObserver
  • changed: class Example(object) → class Example
  • changed: class ExampleProperty(object) → class ExampleProperty
  • changed: class ExampleRecord(object) → class ExampleRecord
  • changed: class Examples(object) → class Examples
  • changed: class ExtraInformation(object) → class ExtraInformation
  • changed: class StructuralCoverageTag(object) → class StructuralCoverageTag
  • changed: method ConjectureData.draw_bits(n, forced=…) → method ConjectureData.draw_bits(n, *, forced=…)
  • added: class Examples.mutator_groups(ExampleProperty)
  • added: method Examples.mutator_groups.begin()
  • added: method Examples.mutator_groups.finish()
  • added: method Examples.mutator_groups.start_example(i, label_index)
  • changed: class Branch(object) → class Branch
  • changed: class Conclusion(object) → class Conclusion
  • changed: class DataTree(object) → class DataTree
  • changed: class Killed(object) → class Killed
  • changed: class TreeNode(object) → class TreeNode
  • added: class ConcreteDFA(DFA)
  • added: class DFA
  • added: constructor ConcreteDFA(transitions, accepting, start=…)
  • added: constructor DFA()
  • added: export proxies
  • added: function cached(fn)
  • added: method ConcreteDFA.is_accepting(i)
  • added: method ConcreteDFA.raw_transitions(i)
  • added: method ConcreteDFA.transition(state, char)
  • added: method DFA.all_matching_regions(string)
  • added: method DFA.all_matching_strings(min_length=…)
  • added: method DFA.all_matching_strings_of_length(k)
  • added: method DFA.canonicalise()
  • added: method DFA.count_strings(state, length)
  • added: method DFA.equivalent(other)
  • added: method DFA.has_strings(state, length)
  • added: method DFA.is_accepting(i)
  • added: method DFA.is_dead(state)
  • added: method DFA.is_live(state)
  • added: method DFA.matches(s)
  • added: method DFA.max_length(i)
  • added: method DFA.raw_transitions(i)
  • added: method DFA.successor_states(state)
  • added: method DFA.transition(i, c)
  • added: method DFA.transition_counts(state)
  • added: method DFA.transitions(i)
  • added: property ConcreteDFA.start
  • added: property DFA.alphabet
  • added: property DFA.start
  • added: variable DEAD
  • added: class DistinguishedState
  • added: class IntegerNormalizer
  • added: class LStar
  • added: class LearnedDFA(DFA)
  • added: constructor IntegerNormalizer()
  • added: constructor LStar(member)
  • added: constructor LearnedDFA(lstar)
  • added: field DistinguishedState.accepting
  • added: field DistinguishedState.experiments
  • added: field DistinguishedState.index
  • added: field DistinguishedState.label
  • added: field DistinguishedState.transitions
  • added: method IntegerNormalizer.distinguish(value, test)
  • added: method IntegerNormalizer.normalize(value)
  • added: method IntegerNormalizer.representatives()
  • added: method LStar.is_accepting(i)
  • added: method LStar.label(i)
  • added: method LStar.learn(string)
  • added: method LStar.member(s)
  • added: method LStar.transition(i, c)
  • added: method LearnedDFA.is_accepting(i)
  • added: method LearnedDFA.label(i)
  • added: method LearnedDFA.successor_states(state)
  • added: method LearnedDFA.transition(i, c)
  • added: property LStar.generation
  • added: property LearnedDFA.start
  • removed: method ConjectureRunner.note_details(data)
  • changed: class ConjectureRunner(object) → class ConjectureRunner
  • changed: class HealthCheckState(object) → class HealthCheckState
  • changed: constructor ConjectureRunner(test_function, settings=…, random=…, database_key=…) → constructor ConjectureRunner(test_function, settings=…, random=…, database_key=…, ignore_limits=…)
  • changed: method ConjectureRunner.new_shrinker(example, predicate) → method ConjectureRunner.new_shrinker(example, predicate=…, allow_transition=…)
  • changed: method ConjectureRunner.shrink(example, predicate) → method ConjectureRunner.shrink(example, predicate=…, allow_transition=…)
  • added: field ExitReason.very_slow_shrinking
  • added: method ConjectureRunner.clear_call_explanation()
  • added: method ConjectureRunner.explain_next_call_as(explanation)
  • added: method ConjectureRunner.generate_mutations_from(data)
  • added: method ConjectureRunner.should_generate_more()
  • added: method ExitReason.describe(settings)
  • changed: class IntList(object) → class IntList
  • changed: class LazySequenceCopy(object) → class LazySequenceCopy
  • added: class NotFound(Exception)
  • added: class SelfOrganisingList
  • added: constructor SelfOrganisingList(values=…)
  • added: function array_or_list(code, contents)
  • added: function find_integer(f)
  • added: function pop_random(random, seq)
  • added: function stack_depth_of_caller()
  • added: method IntList.insert(i, v)
  • added: method SelfOrganisingList.add(value)
  • added: method SelfOrganisingList.find(condition)
  • changed: class Optimiser(object) → class Optimiser
  • changed: class ParetoFront(object) → class ParetoFront
  • changed: class ParetoOptimiser(object) → class ParetoOptimiser
  • removed: field ShrinkPass.fixed_point_at
  • removed: field ShrinkPass.next_prefix
  • removed: function expand_region(f, a, b)
  • removed: method Shrinker.adaptive_example_deletion(chooser)
  • removed: method Shrinker.alphabet()
  • removed: method Shrinker.alphabet_minimize(chooser)
  • removed: method Shrinker.clear_call_explanation()
  • removed: method Shrinker.explain_next_call_as(explanation)
  • removed: method Shrinker.try_zero_example(ex)
  • removed: method Shrinker.zero_examples(chooser)
  • changed: class ShrinkPass(object) → class ShrinkPass
  • changed: class ShrinkPassDefinition(object) → class ShrinkPassDefinition
  • changed: class Shrinker(object) → class Shrinker
  • changed: constructor Shrinker(engine, initial, predicate) → constructor Shrinker(engine, initial, predicate, allow_transition)
  • changed: function block_program(description) → function block_program(self, chooser, description)
  • changed: method ShrinkPass.step() → method ShrinkPass.step(random_order=…)
  • added: class StopShrinking(Exception)
  • added: field ShrinkPass.last_prefix
  • added: function dfa_replacement(self, chooser, dfa_name)
  • added: function shrink_pass_family(f)
  • added: method Shrinker.lower_blocks_together(chooser)
  • added: method Shrinker.match_cache()
  • added: method Shrinker.matching_regions(dfa)
  • added: method Shrinker.redistribute_block_pairs(chooser)
  • removed: function find_integer(f)
  • changed: class Shrinker(object) → class Shrinker
  • added: class FailedToNormalise(HypothesisException)
  • added: function fully_shrink(runner, test_case, predicate)
  • added: function learn_a_new_dfa(runner, u, v, predicate)
  • added: function normalize(base_name, test_function, *, required_successes=…, allowed_to_update=…, max_dfas=…)
  • added: function update_learned_dfas()
  • added: variable SHRINKING_DFAS
  • changed: class Sampler(object) → class Sampler
  • changed: class many(object) → class many
  • changed: function biased_coin(data, p) → function biased_coin(data, p, *, forced=…)
  • added: variable BIASED_COIN_INNER_LABEL
  • changed: class NumpyRandomWrapper(object) → class NumpyRandomWrapper
  • changed: function register_random(r) → function register_random(r: random.Random) -> None
  • removed: function mark_for_escalation(e)
  • changed: class IntervalSet(object) → class IntervalSet
  • changed: class lazyformat(object) → class lazyformat
  • removed: function is_typed_named_tuple(cls)
  • removed: function reserved_means_kwonly_star(func)
  • removed: variable detect_encoding
  • added: function deprecated_posargs(func: C) -> C
  • added: variable READTHEDOCS
  • changed: function check_type(typ, arg, name=…) → function check_type(typ, arg, name)
  • changed: function check_valid_integer(value) → function check_valid_integer(value, name)
  • changed: function domains(max_length=…, max_element_length=…) → function domains(*, max_length: int=…, max_element_length: int=…) -> SearchStrategy[str]
  • changed: function ip4_addr_strings() → function ip4_addr_strings() -> SearchStrategy[str]
  • changed: function ip6_addr_strings() → function ip6_addr_strings() -> SearchStrategy[str]
  • changed: function urls() → function urls() -> SearchStrategy[str]
  • removed: class GenericStateMachine(GenericStateMachineMeta('GenericStateMachine', (object,), {}))
  • removed: class GenericStateMachineMeta(type)
  • removed: constructor GenericStateMachineMeta(*args, **kwargs)
  • removed: field GenericStateMachine.TestCase
  • removed: method GenericStateMachine.check_invariants()
  • removed: method GenericStateMachine.execute_step(step)
  • removed: method GenericStateMachine.print_end()
  • removed: method GenericStateMachine.print_start()
  • removed: method GenericStateMachine.print_step(step, result)
  • removed: method GenericStateMachine.steps()
  • removed: method GenericStateMachine.teardown()
  • removed: method RuleBasedStateMachine.execute_step(step)
  • removed: method RuleBasedStateMachine.last_names(n)
  • removed: method RuleBasedStateMachine.new_name()
  • removed: method RuleBasedStateMachine.print_end()
  • removed: method RuleBasedStateMachine.print_start()
  • removed: method RuleBasedStateMachine.print_step(step, result)
  • removed: method RuleBasedStateMachine.steps()
  • removed: method RuleBasedStateMachine.upcoming_name()
  • changed: class Invariant(object) → class Invariant
  • changed: class MultipleResults(object) → class MultipleResults(Iterable)
  • changed: class Rule(object) → class Rule
  • changed: class RuleBasedStateMachine(GenericStateMachine) → class RuleBasedStateMachine
  • changed: class TestCaseProperty(object) → class TestCaseProperty
  • changed: class VarReference(object) → class VarReference
  • changed: function initialize(targets=…, target=…, **kwargs) → function initialize(*, targets=…, target=…, **kwargs)
  • changed: function rule(targets=…, target=…, **kwargs) → function rule(*, targets=…, target=…, **kwargs)
  • changed: function run_state_machine_as_test(state_machine_factory, settings=…) → function run_state_machine_as_test(state_machine_factory, *, settings=…)
  • added: class StateMachineMeta(type)
  • added: field RuleBasedStateMachine.TestCase
  • added: method RuleBasedStateMachine.teardown()
  • removed: class Statistics(object)
  • removed: constructor Statistics(engine)
  • removed: function note_engine_for_statistics(engine)
  • removed: method Statistics.get_description()
  • added: function describe_statistics(stats_dict)
  • added: function describe_targets(best_targets)
  • added: function note_statistics(stats_dict)
  • added: export ip_addresses
  • added: export timezone_keys
  • added: export timezones
  • removed: class RandomWithSeed(Random)
  • removed: constructor RandomWithSeed(seed)
  • removed: class DefaultValueType(UniqueIdentifier)
  • changed: class UniqueIdentifier(object) → class UniqueIdentifier
  • changed: class DynamicVariable(object) → class DynamicVariable