Download Latest Version Release 4.24.1 source code.zip (61.7 MB)
Email in envelope

Get an email when there's a new version of Schemathesis

Home / v4.24.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-07-19 1.9 kB
Release 4.24.0 source code.tar.gz 2026-07-19 60.6 MB
Release 4.24.0 source code.zip 2026-07-19 61.7 MB
Totals: 3 Items   122.3 MB 17

:rocket: Added

  • Dynamic token authentication support for OAuth2 and OpenID Connect security schemes.
  • Reactive auth refresh: refetch the token and replay a request on configured statuses (auth.dynamic.openapi.<scheme>.retry-on, @schemathesis.auth(retry_on=[401])).

:bug: Fixed

  • Report dynamic authentication token-fetch failures without duplicated text or an internal traceback.
  • Explain 401/403 responses from a dynamic authentication token endpoint as rejected credentials.
  • Crash dictionary changed size during iteration with multiple workers under free-threaded Python.
  • Crash on schemas embedding a JSON Schema resource that declares its own $schema dialect.
  • False positive positive_data_acceptance for required array query parameters generated as empty.
  • False positive negative_data_rejection for body schemas with additionalProperties: false. #4332
  • Generation error for request bodies with prefixItems in OpenAPI 3.1 schemas.
  • Crash Cannot sample from a length-zero sequence for array items with an empty enum.
  • False positive positive_data_acceptance for array items with enum entries violating the item schema.
  • Undercounted stateful link totals for schemas sharing a response definition across operations.
  • Operations with unresolvable $refs silently skipped when dependency ordering applies.
  • False missing_deserializer warning for media types whose own schema is unstructured.
  • Skip reasons in the summary borrowed from operations that were tested in another phase.

:wrench: Changed

  • Configuration errors shown without a traceback, under a Configuration Error heading.
  • Group the missing_deserializer warning by media type, one line per operation.
  • Report why operations were skipped: disabled phases, failure limit, interruption, or time limit.
Source: README.md, updated 2026-07-19