Skip to content

Use PHP 8.4 for Docker and CI - #99

Merged
jolelievre merged 1 commit into
PrestaShop:mainfrom
jolelievre:php-82-security-fixes
Oct 22, 2026
Merged

jolelievre merged 1 commit into
PrestaShop:mainfrom
jolelievre:php-82-security-fixes

Conversation

@jolelievre

@jolelievre jolelievre commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor
Questions Answers
Description? Docker images and CI now run on PHP 8.4, the minimum required version goes from PHP 8.0 to 8.2 (PHP 8.0 and 8.1 are no longer maintained). Docker images use the production php.ini. Dependencies are unchanged, the lock file only gets its hash/platform updated.
Type? improvement
BC breaks? no
Deprecations? no
Fixed ticket? ~
Sponsor company ~
How to test? CI green. After deployment, php -v in the container must show PHP 8.4.

@github-project-automation github-project-automation Bot moved this to Ready for review in PR Dashboard Oct 21, 2026
@jolelievre
jolelievre force-pushed the php-82-security-fixes branch from 5b89568 to 0a73211 Compare October 21, 2026 17:06
@jolelievre jolelievre changed the title Upgrade to PHP 8.2 to get the PHP security fixes Upgrade to PHP 8.2 Oct 21, 2026

@mattgoud mattgoud 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.

Review 🟢 no blocker

Checks

.ai conventions: 🟢

Source Result
Contexts read no .ai/ in this repository, judged on the general rules
pr-hygiene.py 🟢 clean
composer validate --strict 🟢 valid, lock in sync (the php-jwt URL and {} changes come from a newer Composer, same reference)

Tested on: 0a73211, docker php:8.2-cli (8.2.35) and php:8.4-cli
Run: PHPUnit tests/ (112 tests, 300 assertions) and PHPStan, both green on 8.2 and 8.4; composer check-platform-reqs --lock passes on both. Checked that php:8.2-apache / php:8.2-alpine ship 8.2.35 and php:8.4-apache / php:8.4-alpine ship 8.4.27.
Not run: the cloud image build and deployment (no integration-deployment label).

Findings

  • 🟠 Should fix: PHP 8.2 reaches end of life on Dec 31, 2026 (php.net), so this upgrade only buys two months before the image stops getting security fixes again. The code and the current lock already run on 8.4 as they are (tests and PHPStan green, platform requirements met), so 8.4 (security support until 2028) costs the same change: php:8.4-apache / php:8.4-alpine, config.platform.php 8.4, and the CI matrix.

Open questions

  • Production deploys on a GitHub release only: is a v1.3.15 planned right after the merge so the patched image actually ships?

Comment thread cloud.Dockerfile Outdated
@jolelievre
jolelievre force-pushed the php-82-security-fixes branch from 0a73211 to ed36edc Compare October 21, 2026 17:29
@jolelievre jolelievre changed the title Upgrade to PHP 8.2 Use PHP 8.4 for Docker and CI Oct 21, 2026
@ps-jarvis ps-jarvis added the Waiting for QA Status: Action required, Waiting for test feedback label Oct 21, 2026
@ps-jarvis ps-jarvis moved this from Ready for review to To be tested in PR Dashboard Oct 21, 2026
@jolelievre
jolelievre force-pushed the php-82-security-fixes branch from ed36edc to 8ab3cf5 Compare October 21, 2026 17:32
@jolelievre jolelievre removed the Waiting for QA Status: Action required, Waiting for test feedback label Oct 22, 2026
@jolelievre
jolelievre merged commit 55069e3 into PrestaShop:main Oct 22, 2026
4 checks passed
@github-project-automation github-project-automation Bot moved this from To be tested to Merged in PR Dashboard Oct 22, 2026
@jolelievre
jolelievre deleted the php-82-security-fixes branch October 22, 2026 06:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Merged

Development

Successfully merging this pull request may close these issues.

5 participants