test: pull latest minors and add the PostgreSQL 19 prerelease to the matrix #30#31
Conversation
…matrix #30 Images are now pulled before each version run (native first, amd64 fallback, offline falls back to the local cache with a note), so a stale Docker cache can no longer masquerade as the latest minor; a stale cache had been testing 14.20 and 16.13 while 14.23 and 16.14 were released. Adds 19beta1 to the default matrix to catch breakage before 19 GA.
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 24 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the 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 configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThe PostgreSQL test matrix now includes 19beta1, documents coverage from 9.6 through 19beta1, pulls images before each run, and falls back to locally cached images when pulls fail. ChangesPostgreSQL compatibility test matrix
Estimated code review effort: 2 (Simple) | ~10 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
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 `@dev/test/run_tests.sh`:
- Around line 55-61: Update the image-pull logic in run_tests.sh so cached-image
fallback occurs only for explicit offline or connectivity failures. Capture and
inspect the docker pull error, fail the version with the error surfaced for bad
tags, authentication failures, and other non-connectivity errors, and prevent
docker run from using a stale local image in those cases.
🪄 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: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: f3e80231-b5d6-434b-b88a-98c0a81e9834
📒 Files selected for processing (2)
README.mddev/test/run_tests.sh
A pull failure now fails that PostgreSQL version by default and surfaces the docker error, so a bad tag, auth error, or rate limit cannot silently fall back to a possibly stale cached image. Set NANOID_TEST_OFFLINE=1 to allow the local image cache for deliberately offline runs. README and script-header docs updated to match. Addresses CodeRabbit review feedback on PR #31.
Summary
Keeps the multi-version test suite honest about "latest minor of every major" and extends it to the PostgreSQL 19 prerelease:
run_tests.shnow pulls the image before each version run (native first, amd64 fallback); when the pull fails (offline), it falls back to the local cache with a note. A stale local cache had been silently testing 14.20 and 16.13 while 14.23 and 16.14 were the released latest minors (checked against the PostgreSQL release archive on 2026-07-14).19beta1(PostgreSQL 19 Beta 1, released 2026-06-04, officialpostgres:19beta1-alpineimage). The inline comment says to bump the prerelease as new betas/RCs land and to replace it with plain19at GA.The documented PostgreSQL 9.6 minimum was re-verified as part of this work and stays: installation on 9.5.25 fails with
syntax error at or near "PARALLEL"(thePARALLELclause ofCREATE FUNCTIONexists since 9.6), and the suite passes on 9.6.24.Verification
bash -npassesdev/test/run_tests.sh 9.6 14 19beta1passes: 14 now reports server 14.23 (freshly pulled latest minor instead of the stale cached 14.20), 9.6 exercises the amd64 pull fallback, and the currentnanoid.sqlpasses the full unit and regression suites on 19beta1Note
Expect a small textual conflict with #26 in
run_tests.shand the README test section (the upgrade-path test stage added there touches adjacent lines); whichever lands second gets rebased as part of the usual stack maintenance.Closes #30
Summary by CodeRabbit