Skip to content

Move to PHP 8.4 and fix the xdebug build - #65

Merged
Firehed merged 5 commits into
mainfrom
php-8.4
Aug 11, 2026
Merged

Move to PHP 8.4 and fix the xdebug build#65
Firehed merged 5 commits into
mainfrom
php-8.4

Conversation

@Firehed

Copy link
Copy Markdown
Owner

PHP 8.1 is EOL, and the Docker build was failing independently of that. This moves the template to 8.4 and fixes the build.

Two unrelated breakages

xdebug no longer compiles.pecl install xdebug fails at configure with rtnetlink.h is required, install the linux-headers package. A recent Xdebug release added that dependency, and $PHPIZE_DEPS does not include it. This is not version-specific — it reproduces identically on 8.1 and 8.4. linux-headers is installed in the env-with-xdebug stage only, so the production env and server images stay unchanged.

The 2023 dependency set does not run on 8.4.nikic/php-parser 4.x triggers an implicitly-nullable-parameter deprecation, which bootstrap.php promotes to an ErrorException, so orm:generate-proxies fatals during the server build. A plain composer update resolves it — every package stayed inside its existing constraint, so no major version bumps were required here. It also clears the security advisories that composer audit was reporting.

Base image tag

php:8.1.0-alpine3.15 becomes php:8.4.24-alpine, dropping the Alpine pin.

The pin is why #62 offered only 8.1.0 to 8.1.13: Dependabot preserves the tag suffix, and Alpine 3.15 has no PHP builds past 8.1, so the upgrade path dead-ended. Without the pin, Dependabot can move PHP across minors and majors, and the base picks up Alpine security rebuilds.

Effect on the open Dependabot PRs

@Firehed
Firehed merged commit 85581ce into mainAug 11, 2026
4 of 5 checks passed
@Firehed
Firehed deleted the php-8.4 branch August 11, 2026 18:44
Sign up for freeto 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

@Firehed