chore: allow utopia-php/cache ^5.0 - #70
Conversation
Cache 5.0.0 is released and this package pinned ^4, which blocks every consumer downstream: appwrite cannot move to cache 5 while any dependency still requires cache 4. Nothing here needs to change to support it. Cache's major is for the Redis\Multiplexing deadline behaviour and for requiring circuit-breaker ^0.4, which dropped the threshold argument. This package uses neither — grep for Multiplexing and CircuitBreaker across src/ and tests/ returns nothing, and the generic Cache and Adapter surface is identical between 4 and 5. Constrained as ^4.0 || ^5.0 rather than ^5.0 so this does not force the upgrade on anyone still on cache 4. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Greptile SummaryThe PR allows consumers to resolve either utopia-php/cache 4.x or 5.x and updates the lockfile to exercise version 5.0.0.
Confidence Score: 5/5The PR appears safe to merge, with no concrete changed-code-triggered failures identified. The package already requires PHP 8.4, repository cache usage remains on the compatible generic Cache and None adapter surface, and the lockfile’s unrelated PHPUnit advisory predates this change and is unreachable through the configured test path. Important Files Changed
Reviews (1): Last reviewed commit: "chore: allow utopia-php/cache ^5.0" | Re-trigger Greptile |
|
On the two test failures — neither is from this change.
There is no code path from this change to either. Cache 5.0.0 differs from 4.x in Locally the suite is unchanged by the bump: 102 tests / 362 assertions / 51 failures both with and without it (the extra local failures are registrar credentials this machine does not have). Flagging rather than asserting green — worth someone confirming the Name.com fixture separately, since it will keep drifting. |
Why
utopia-php/cache5.0.0 is out. This package pins^4, and because Composer resolves the whole graph, that pin blocks every consumer downstream —appwrite/appwritecannot move to cache 5 while any of its dependencies still require cache 4.Why this is safe
Cache 5.0.0's major is not about the general cache API, which is unchanged. It is a major for two reasons:
Redis\Multiplexingchanged how a per-call read deadline is handled — a timeout no longer tears down the shared connection (utopia-php/monorepo#152).utopia-php/circuit-breaker ^0.4, which removed thethresholdconstructor argument in favour of a failure rate (utopia-php/monorepo#153).This package uses neither.
grepforMultiplexingandCircuitBreakeracrosssrc/andtests/returns nothing — only the genericCache/Adaptersurface is used, and that is identical between 4 and 5.The constraint
^4.0 || ^5.0rather than^5.0, so this package does not force the upgrade on anyone still on cache 4. Consumers pick the version; this just stops being the thing that says no.🤖 Generated with Claude Code