Skip to content

Prepare Moodle 5.3 beta on PHP 8.4 and exercise persistent LTS upgrades - #171

Merged
erseco merged 5 commits into
mainfrom
feature/moodle-53-readiness
Sep 16, 2026
Merged

erseco merged 5 commits into
mainfrom
feature/moodle-53-readiness

Conversation

@erseco

@erseco erseco commented Sep 16, 2026 •

Copy link
Copy Markdown
Owner

Depends on #170; consumes ateeducacion/moodle#7. Builds the exact 5.3 beta/RC on PHP 8.4 from current main code. Stable/default promotion is separate in draft #172; 4.5 retains PHP 8.3.

Adds runtime and prerelease-version checks, 64-bit publication targets, three-backend beta CI and a real persistent 4.5 → 5.3 upgrade fixture. Integration exposed and fixed two defects: the PHP 8.4 base's Nginx fallback spelling, and retired bundled plugins (including qtype_random and nested subplugins) being preserved as custom plugins. Sync now uses Moodle's own deleted-plugin manifest.

The beta's actual environment.xml requires PostgreSQL 17 and MariaDB 11.4, newer than the public release notes. Tests pin those minimum series.

Validation completed locally on arm64 / Docker 29.7.2 / PHP 8.4.21:

  • PostgreSQL 17, MariaDB 11.4 and SQLite: install, HTTP, runtime/extensions/iconv, Moosh, status, sync and restart passed.
  • Real 4.5.14/PHP 8.3 → 5.3 beta/PHP 8.4 upgrade on PostgreSQL 17: course, file and installed plugin preserved; cron and subsequent restart passed (exit 0).
  • 10 release-policy cases, 10 runtime cases, 14 sync scenarios, 13 version checks, 60 blueprint assertions, actionlint, targeted ShellCheck, PHP lint and diff checks passed.
  • Real image gate accepts 5.3beta and rejects a mismatched 5.2beta label.

Full report, commands, rollout and rollback. CI adds amd64 coverage; its current result appears in the checks below. Test volumes were removed. No production images were published; remaining 32-bit image support is intentionally not advertised. Final stable 5.3 qualification and base-image security maintenance remain release gates.

Comment thread Dockerfile Dismissed
Comment thread Dockerfile Fixed
Base automatically changed from hotfix/release-tag-policy to main September 16, 2026 14:47
@erseco
erseco merged commit 41fbca1 into main Sep 16, 2026
22 checks passed
@erseco
erseco deleted the feature/moodle-53-readiness branch September 16, 2026 14:53
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.

2 participants