T360995: Migrate Wikimedia production from PHP 8.1 to PHP 8.3 | [None yet]
Preparation for MediaWiki (Jan–Mar 2026):
- CI: Create docker images in integration/config.git with PHP 8.5 using Debian packages from sury.org. T410414. Nov 2025
- CI: CI: Create Quibble jobs with PHP 8.5 and enable as experimental in Zuul for MediaWiki repositories. T410414, change 1211197. Nov 2025
- DX: Create docker images in releng/dev-images.git with PHP 8.5. T413817 Aug 2026
- MW: Make CI for MediaWiki core and WMF extensions pass on PHP 8.5. Apr 2026
- DX: Switch MediaWiki-Docker default to PHP 8.5. T407430 Aug 2026
- MW: Pre-release maintenance, to do before the branch cut in April.
Preparation for WMF (Jul–Aug 2026):
- SRE: Create Debian packages for PHP 8.5 and upload to apt.wikimedia.org. T432983 Aug 2026.
- CI: Switch PHP 8.5 images in integration/config.git from sury.org to wikimedia.org and apply to Jenkins jobs. T433254 Aug 2026.
- DX: Switch PHP 8.5 images in releng/dev-images.git from sury.org to wikimedia.org and apply update to MediaWiki-Docker. T413817 Aug 2026
- SRE: Create production images for PHP 8.5 and add new flavour to MediaWiki deployments. T432988
- SRE: Generate and deploy title-case mapping in MediaWiki configuration (wmf-config/UcfirstOverrides.php). T432985
- SRE: Switch mw-debug/next to PHP 8.5 images, for public opt-in testing via WikimediaDebug. T432989
- Beta Cluster: Switch to PHP 8.5, includes writing Puppet changes to support PHP 8.5 on baremetal.
- SRE: Change Scap to use PHP 8.5 images when invoking maintenance scripts, and upgrade Scap in Beta Cluster and production. T432989
- DX: Switch Catalyst/Patchdemo to PHP 8.5. T435368
Test (Aug–Sep 2026):
- MW: Start monitoring and fixing deprecation warnings as found in Logstash.
- QTE, MW, SRE: One week for validation and end-to-end testing via WikimediaDebug "next" and Beta Cluster.
- SRE, MW: Benchmarking for PHP 8.5, check specific well-known workloads to identify regressions or suboptimal configurations. T435072
- SRE, MW: Update the production parsoid testing environment to PHP 8.5 and work with Content Transform Team to validate its operation.
Rollout (Oct–Nov 2026):
- SRE: Ramp up mw-api-ext and mw-web cluster (cookie-based).
- SRE: Ramp up mw-api-int and mw-jobrunner.
- SRE: Ramp up mw-api-ext and mw-web cluster (remaining).
- SRE: Switch other mw-on-k8s server groups (mw-script, mw-cron, mw-experimental, mediawiki-dumps-legacy, etc.) and the deployment server.
Post-rollout (Nov–Dec 2026):
- SRE: Turn down cookie-based routing and other "next" handling, validating that no workloads still run on the old PHP version (which would hard-fail at this point).
- SRE: Remove emulation of old-PHP title-case mapping.
People on point
Beta cluster: TBD
CI: @Jdforrester-WMF
MW engineering: TBD
RelEng: @hashar
QTE: TBD
SRE: @Raine