fix: switch from xdebug to pcov for code coverage (#101)

* fix: remove xdebug-specific settings from phpunit.xml and composer.json

Remove `<ini name="xdebug.mode" value="coverage"/>` from phpunit.xml and
`XDEBUG_MODE=coverage` prefix from composer scripts. These fail when xdebug
is not installed and are unnecessary when using PCOV for code coverage.

* ci: switch from xdebug to pcov for code coverage

Both test matrix and coverage jobs now use `coverage: pcov`, matching
the existing test-coverage.yaml workflow. PCOV is faster for
coverage-only use and avoids the xdebug dependency conflict.

* build: replace xdebug with pcov in Docker setup

Switch Docker development environment from xdebug to pcov for code
coverage and remove the XDEBUG_MODE environment variable from
docker-compose.yml. Standardizes on pcov across all environments.
This commit is contained in:
2026-03-08 19:16:07 +02:00
committed by GitHub
parent e26312a6ee
commit d1cbf50c5e
5 changed files with 8 additions and 15 deletions

View File

@@ -15,12 +15,10 @@ RUN apk add --no-cache \
# Install Composer
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
# Install and configure Xdebug for code coverage
# Install PCOV for code coverage
RUN apk add --no-cache $PHPIZE_DEPS \
&& pecl install xdebug \
&& docker-php-ext-enable xdebug \
&& echo "xdebug.mode=coverage,debug" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
&& echo "xdebug.client_host=host.docker.internal" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
&& pecl install pcov \
&& docker-php-ext-enable pcov
# Set working directory
WORKDIR /app

View File

@@ -11,7 +11,6 @@ services:
working_dir: /app
environment:
- COMPOSER_HOME=/home/developer/.composer
- XDEBUG_MODE=coverage
stdin_open: true
tty: true
command: tail -f /dev/null