chore: allow utopia-php/cache ^5.0 - #137
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 broadens the supported
Confidence Score: 4/5The PR appears safe to merge, but the test container should be upgraded to PHP 8.4 so CI validates cache 5 on a supported runtime. The generic cache APIs used by the repository remain compatible, but the refreshed lockfile installs a PHP 8.4-only dependency into a PHP 8.3 test image by bypassing Composer platform checks. Files Needing Attention: composer.lock and Dockerfile Important Files Changed
Prompt To Fix All With AI### Issue 1
composer.lock:1941
**Cache 5 exceeds test runtime**
The lockfile now installs cache 5.0.0, which requires PHP 8.4, while the test container runs PHP 8.3 and bypasses Composer platform checks. CI therefore exercises cache 5 on an unsupported runtime and does not validate the supported PHP 8.4 configuration.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.Reviews (1): Last reviewed commit: "chore: allow utopia-php/cache ^5.0" | Re-trigger Greptile |
| { | ||
| "name": "utopia-php/cache", | ||
| "version": "4.0.0", | ||
| "version": "5.0.0", |
There was a problem hiding this comment.
The lockfile now installs cache 5.0.0, which requires PHP 8.4, while the test container runs PHP 8.3 and bypasses Composer platform checks. CI therefore exercises cache 5 on an unsupported runtime and does not validate the supported PHP 8.4 configuration.
Prompt To Fix With AI
This is a comment left during a code review.
Path: composer.lock
Line: 1941
Comment:
**Cache 5 exceeds test runtime**
The lockfile now installs cache 5.0.0, which requires PHP 8.4, while the test container runs PHP 8.3 and bypasses Composer platform checks. CI therefore exercises cache 5 on an unsupported runtime and does not validate the supported PHP 8.4 configuration.
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.
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