Releases: heutelbeck/sapl-python
Release list
SAPL Python PEP 4.1.0
Requires a SAPL PDP 4.1.0 or higher (the SUSPEND verb and streaming semantics are 4.1.0 engine features).
Streaming enforcement on a four-state Mealy machine (Pending/Permitting/Suspended/Terminated), strict fail-closed: one stream-enforcement decorator, SUSPEND pauses and PERMIT resumes, DENY/INDETERMINATE/NOT_APPLICABLE terminate, a per-item obligation failure terminates.
PDP client resilience: transport errors and server completions emit INDETERMINATE and reconnect with backoff instead of ending the subscription.
RSocket transport alongside HTTP.
Query-rewriting shim for SQLAlchemy and PyMongo — narrows a pre_enforce-protected read at the data layer from a policy obligation (narrow-only; off-convention paths fail closed).
Content filtering fails closed — full JSONPath, per-element list filtering, bounded blacken.
Packages: sapl-base, sapl-flask, sapl-fastapi, sapl-django, sapl-tornado, sapl-fastmcp, sapl-sqlalchemy, sapl-pymongo.
v4.0.1 release
v4.0.0rc2
Full Changelog: v4.0.0rc1...v4.0.0rc2