Skip to content

Upgrade CI database images: MySQL 5.6 → 8.0, PostgreSQL 9.6 → 16#277

Open
opengeek wants to merge 1 commit intomodxcms:3.xfrom
opengeek:fix/ci-db-images
Open

Upgrade CI database images: MySQL 5.6 → 8.0, PostgreSQL 9.6 → 16#277
opengeek wants to merge 1 commit intomodxcms:3.xfrom
opengeek:fix/ci-db-images

Conversation

@opengeek
Copy link
Copy Markdown
Member

@opengeek opengeek commented Mar 27, 2026

What changed and why

The CI matrix was testing against MySQL 5.6 and PostgreSQL 9.6, both of which reached EOL in 2021. Neither is a valid test target for xPDO 3.2's PHP 8.1 minimum — MySQL 5.6 + PHP 8.x is not a supported or tested configuration upstream.

More critically, the MySQL 5.6 CI job was actively masking real regressions:

Upgrading to MySQL 8.0 and PostgreSQL 16 makes the CI suite honest about the environments xPDO 3.2 is actually targeting.

Files and methods changed

  • .github/workflows/ci.ymlmysql service image: mysql:5.6mysql:8.0
  • .github/workflows/ci.ymlpostgres service image: postgres:9.6postgres:16

Cross-driver impact

CI hardening only. No xPDO source code changed.

Test coverage

No new tests. Existing MySQL and PostgreSQL test suites now run against current-generation database images.

Breaking change assessment

No public API change. This is a CI infrastructure update. Consumers running their own test suites against MySQL 5.6 or PostgreSQL 9.6 are unaffected by this change.

AI Disclosure

This fix was developed using an AI-assisted workflow. AI agents (Claude) wrote the code, tests, and initial code review under the direction of the project maintainer (@opengeek), who reviewed the final diff, validated the approach, and takes responsibility for the submission.

Contributors

No external contributors associated.

MySQL 5.6 (EOL 2021) is not a valid test target for xPDO 3.2's PHP 8.1
minimum — the combination does not exist in production, and the 5.6 CI
job was masking real MySQL 8 regressions (modxcms#207, modxcms#190). PostgreSQL 9.6
(EOL 2021) receives the same treatment.
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