chore: allow utopia-php/cache ^5.0 - #943
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>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe Composer dependency constraint for ChangesCache dependency support
Estimated code review effort: 1 (Trivial) | ~2 minutes Merge Risk: ⚪ Minimal · up to This change broadens the supported cache dependency range without introducing an actionable merge-blocking risk; it is merge-ready after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Greptile SummaryThis PR permits consumers to resolve either cache 4 or cache 5 while updating the development lockfile to exercise cache 5.
Confidence Score: 5/5The PR appears safe to merge with no concrete blocking or non-blocking defects identified. The widened constraint preserves cache 4 compatibility, while the lockfile consistently resolves cache 5 and its sole circuit-breaker dependency; repository code has no direct dependency on the changed circuit-breaker API. Important Files Changed
Reviews (1): Last reviewed commit: "chore: allow utopia-php/cache ^5.0" | Re-trigger Greptile |
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
Summary by CodeRabbit