Releases
v4.2.0
Compare
Sorry, something went wrong.
No results found
[4.2.0] - 2026-08-26
π Features
(storage) Add Azure AD credentials and cross-provider object listing
(clock) Add a Quiote\Support\Clock seam and convert every ambient now() read
(random) Add a Quiote\Support\Random seam and convert every ambient random_bytes/random_int read
(replay) Add quioteframework/replay with the effect-ledger primitives
(replay) Add a decorating PDO recorder and isolated-replay stub
(replay) Add a Propulsion query observer for the effect ledger
(replay) Add an HTTP client recording transport and isolated-replay stub
(replay) Add a cache recording decorator and isolated-replay stub
(replay) Add a queue-push recording decorator and an assert-only replay driver
(env) Add a Quiote\Support\Environment seam and a replay recorder/stub
(replay) Add a Doctrine DBAL query recorder for the effect ledger
(replay) Add an Eloquent query recorder for the effect ledger
(replay) Add a Cycle query recorder for the effect ledger
(replay) Add cassette format, recorder middleware, and console commands
(replay) Wire DB effects into live requests via a generic EffectSource seam
(replay) Wire Doctrine/Eloquent/Cycle DB effects into live requests
(replay) Add --as-test/ReplayTestCase test emission from a cassette
(replay) Add PDO cassette store and cassette:prune
(replay) Add an object-store-backed cassette store for Azure Blob
(replay) Add a cassette-index chain to resolve a bare id to a cassette
(replay) Build isolated replay mode, and make it the default
(replay) Isolate Propulsion by substituting the connection
(config) Resolve %env(NAME)% placeholders in compiled config at load time
(config) Add Rule::oneOf union schema type
(config) Let a plugin's enabled setting defer to the environment
(routing) Diagnose the views an action returns, not just the one it declares
π Bug Fixes
(execution) Give slot-rendered views the live ValidationManager
(storage) Require quioteframework/storage from the framework itself
(plugin) Close plugin-state cleanup gaps found auditing packages/*
(test) Distinguish a stored null from a miss in Psr16KeyRecordingCache
(replay) Make meta.effects_instrumented a real cassette field
(replay) Escape cassette text interpolated into emitted test comments
(replay) Redact response headers so Set-Cookie never enters a cassette
(replay) Bound cassette inflation against a decompression bomb
(replay) Cut truncated bodies and masked values on character boundaries
(replay-doctrine) Only snapshot a result set when a ledger is actually active
(replay) Refuse a positional ledger match instead of answering with another call's result
(replay) Bound effect payloads by bytes and report every truncation in meta
(replay) Redact the effect ledger at the one point every recorder shares
(replay) Gate live replay on safe methods, and gate emitted tests too
(replay) Close the three remaining secret-leak paths in recording
(replay) Make the PDO recorder faithful to the connection it decorates
(replay) Give a db effect's result one shape, and make the adapters compose
(replay) One timestamp rule, resilient index chain, and far fewer store round trips
(replay) Anchor the store path, honour the PSR contracts, and stop paying for discarded work
(replay) Treat a cassette as untrusted input on the replay path
(replay) Select the cassette store by config, not by plugin load order
(storage) Read ETags and oversized lengths correctly, and test the package
(ci) Scope the framework release notes by range, not by --current
(support) Make SystemEnvironmentReader see $_ENV, not just getenv()
(runtime) Read framework env vars through the environment seam
(ci) Scope package release notes by range, not by --current
π Refactor
(storage) Decouple cloud-azure/cloud-s3/cloud-gcs from the framework
(filesystem) Extract Quiote\Filesystem* into its own package
(replay) Extract cassette projection and test emission
π Documentation
(replay) Remove internal plan-doc citations from code comments
(replay) Add changelogs for the eight replay packages
(packages) Add the three missing package changelogs
(replay) Make the replay packages 4.0.0-RC1, not 4.0.0
(release) Track the pending v4.2.0-RC1 release plan and its open questions
(replay) Fold isolated mode into the changelogs and the release plan
(release) Correct the replay RC rationale now that isolated mode has landed
(replay) Record the Propulsion isolation in the changelogs
Add UPGRADING.md and make cloud-azure an RC
Prep v4.2.0-RC1
(storage) Record the ObjectMetadata fixes in the changelog
Refresh the v4.2.0-RC1 changelog for the storage fixes
(release) Split the cloud-azure and db-doctrine baselines
(upgrading) Correct the RC install recipes against the published versions
Prep v4.2.0-RC2
Prep v4.2.0
Fold the triad scanner change into the v4.2.0 changelog
π§ͺ Testing
(config) Document environment-dependent value patterns for PHP-array databases files
βοΈ Miscellaneous Tasks
(ci) Add new replay packages to package split
(release) Bump the framework version to 4.2.0
You canβt perform that action at this time.