pypi schemathesis 4.30.0
Release 4.30.0

7 hours ago

🚀 Added

  • Sign up and log in automatically when the schema declares sign-up and login operations.
  • Suggest a dynamic auth config when authentication fails on schemas with sign-up and login operations.
  • Dependency inference links values only an item GET returns, like version, into update bodies.
  • Dependency inference links ids created inside response envelopes, and fromAirportId-style fields to fromAirport objects.
  • max-stream-events config option to stop reading Server-Sent Events streams after that many events. #3633

🔧 Changed

  • Follow redirects only within the requested host; return redirects elsewhere as the response.
  • positive_data_acceptance accepts 3xx responses by default.
  • Coverage phase leads with values from earlier responses over declared parameter examples.

🐛 Fixed

  • False positive ignored_auth on redirects to a login page and on invalid path parameters.
  • False positive negative_data_rejection on valid bodies after a before_call hook edits another part. #5105
  • False positive negative_data_rejection when a body.* parameter override restores the mutated field.
  • pytest plugin collecting @schema.parametrize() tests imported under names pytest would not collect.
  • Schema Error on Open API 3.1 schemas using array-form items for tuples.
  • Crash on response examples whose media type declares a boolean schema.
  • Network error on the first redirect with max-redirects = 0.
  • Stateful testing aborting when a few operations hang instead of skipping them.
  • st run applying Hypothesis's CI profile over explicit options when CI is set. #4391
  • Omit empty exploded-object query parameters from requests.
  • Dependency inference missing links from collection listings to item path parameters like {partition_id}.
  • Stateful testing failing with invalid inferred links when operations share a response definition.
  • Schema Error "Invalid operationRef definition" for inferred links to templated paths.
  • ignored_auth crash in Case.validate_response on schemas without an absolute base URL.
  • Crash on non-string pattern definitions during test case generation.
  • False "credentials likely invalidated" warning when an endpoint returns 401 after a successful re-login.
  • Server-Sent Events: validate schema against the whole stream, as an array of events. #3633
  • Spurious internal or schema error when values learned from responses alter test case generation.
  • Negative mode skipping operations when --header sets only some required headers.
  • Stateful phase failing the run on baseline failures when Hypothesis reports the suite as flaky. #5104
  • Record pytest invocations correctly in generated reports.
  • WFC report fault categories missing the id required by WFC Report 0.8.0.
  • Engine runs against ASGI apps sending requests over the network, and crashing on WSGI apps.
  • --generation-deterministic producing different test cases per run, and st fuzz ignoring --generation-database.
  • Links with percent-encoded operationRef (e.g. %7Bid%7D) resolving to the wrong operation.
  • ResourceWarning about unclosed streams after ASGI lifespan shutdown. #5085
  • Reproduction commands showing the schema's base URL instead of the requested one.
  • Report server outages behind port proxies like docker run -p once, not per operation.
  • Crash in stateful testing on paths with segments like {id}:cancel.
  • Misleading additionalProperties hint when the server rejects a body for its NUL characters.
  • False positive unsupported_method for methods a templated path declares on the same URL.
  • Hang or timeout error on endless Server-Sent Events streams. #3633
  • Crash at the end of st run when the baseline file cannot be written.

Don't miss a new schemathesis release

NewReleases is sending notifications on new releases.