Skip to content

chore(deps)!: upgrade to utopia-php/pools 2.x - #928

Merged
loks0n merged 2 commits into
mainfrom
chore/pools-2
Jul 31, 2026
Merged

chore(deps)!: upgrade to utopia-php/pools 2.x#928
loks0n merged 2 commits into
mainfrom
chore/pools-2

Conversation

@loks0n

@loks0n loks0n commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Pools 2.0 makes configuration constructor-only and replaces the retry knobs with a single acquisition budget.

Database\Adapter\Pool only ever calls $pool->use(), which is unchanged, so the adapter itself needs no edits. The only code change is the pool construction in PoolTest, which now passes the required timeout.

Needed so that appwrite/appwrite can move to pools 2 — utopia-php/database is one of the packages still pinning pools 1.* and blocking resolution.

Blocked on utopia-php/cache#82. utopia-php/cache is a hard requirement here and still pins pools 1.*, so composer.lock cannot be regenerated until that lands and is tagged. The lock is intentionally left untouched in this PR and needs a refresh before merge — CI will be red until then.

Release order: utopia-php/cache, then this, then utopia-php/abuse.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Bug Fixes
    • Improved MySQL connection pool behavior by applying a consistent timeout configuration.
    • Updated connection handling to support the latest pool management improvements.
    • Enhanced reliability and consistency when establishing database connections.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Warning

Review limit reached

@loks0n, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 54 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 777ae116-48f0-4154-989b-18643e05959c

📥 Commits

Reviewing files that changed from the base of the PR and between 50c3ec5 and d1d505f.

⛔ Files ignored due to path filters (1)
  • composer.lock is excluded by !**/*.lock
📒 Files selected for processing (1)
  • composer.json
📝 Walkthrough

Walkthrough

The PR updates the utopia-php/pools dependency constraint in composer.json from version 1 to version 2. The MySQL pool factory in the test file passes an explicit timeout: 0.0 argument to the pool constructor.

Changes

Pools v2 upgrade

Layer / File(s) Summary
Dependency version bump and test update
composer.json, tests/e2e/Adapter/PoolTest.php
The utopia-php/pools requirement changes from 1.* to 2.*. The MySQL pool factory closure now passes timeout: 0.0 to the constructor.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Possibly related PRs

Suggested reviewers: abnegate

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the dependency upgrade to utopia-php/pools 2.x, which is the main change in the pull request.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Fix failing CI checks
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/pools-2

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@greptile-apps

greptile-apps Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

Updates the database package to Pools 2.x.

  • Raises utopia-php/cache to 4.x and utopia-php/pools to 2.x.
  • Refreshes the lock file with compatible cache 4.0.0 and pools 2.0.1 releases.
  • Supplies the required pool acquisition timeout in the end-to-end test.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains; the previously incompatible lock entries now select cache 4.0.0 and pools 2.0.1, satisfying both the root and transitive constraints.

Important Files Changed

Filename Overview
composer.json Updates the direct cache and pools constraints to mutually compatible major versions.
composer.lock Locks cache 4.0.0 and pools 2.0.1 with consistent transitive constraints and refreshed metadata.
tests/e2e/Adapter/PoolTest.php Adapts test pool construction to the Pools 2.x constructor by supplying the required timeout.

Reviews (2): Last reviewed commit: "chore(deps): bump utopia-php/cache to 4...." | Re-trigger Greptile

Comment thread composer.json

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@composer.json`:
- Line 44: Regenerate composer.lock from the composer.json dependency
declaration so the locked utopia-php/pools package resolves to a compatible 2.x
version instead of 1.1.0. Commit the updated lockfile while preserving the
declared dependency set.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: ea8b5274-1ba3-4dac-9643-302fb13504f6

📥 Commits

Reviewing files that changed from the base of the PR and between 7fd133e and 50c3ec5.

📒 Files selected for processing (2)
  • composer.json
  • tests/e2e/Adapter/PoolTest.php

Comment thread composer.json
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@loks0n
loks0n merged commit 40185b1 into main Jul 31, 2026
22 checks passed
@loks0n
loks0n deleted the chore/pools-2 branch July 31, 2026 13:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant