Skip to content

v4.2.0

Choose a tag to compare

@rennf93 rennf93 released this 25 Aug 15:59
· 46 commits to master since this release
8dc2026

guard-core 3.13.0 compatibility: call_next bypass contract, bounded body readers, behavior-scan lockstep.

  • Fixed: guard-core 3.12.0 (30f43944) made BypassHandler.handle_passthrough and handle_security_bypass require a call_next callable, so calls without it raised TypeError on every request and cascaded to 500. DjangoAPIGuard.call now builds a wrapped_call_next closure over self.get_response(request) and passes it to both bypass methods. Django can supply a real downstream callable because its middleware exposes get_response.
  • Added: DjangoGuardRequest/DjangoGuardResponse.read_body_prefix(max_bytes) implement guard-core 3.12.0 SyncBoundedBodyReader/SyncBoundedResponseBodyReader protocols (StreamingHttpResponse returns b"").
  • Fixed (tests): behavior_scan_response_body fixture, detection-cache seam patch (utils.detect_penetration_attempt), VALID_CLOUD_PROVIDERS expansion, honeypot read_body_prefix, --cov-branch enforced.
  • Compatibility: requires guard-core 3.13.0. No public API change.

See CHANGELOG.md for full details.