diff --git a/.github/workflows/codecov.yml b/.github/workflows/codecov.yml new file mode 100644 index 0000000..f5980e7 --- /dev/null +++ b/.github/workflows/codecov.yml @@ -0,0 +1,53 @@ +on: + - push + +name: Run Codecov checks + +jobs: + code-coverage: + name: Code Coverage + + runs-on: ${{ matrix.os }} + + strategy: + matrix: + os: + - ubuntu-latest + + php: + - "8.1" + - "8.2" + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Install PHP + uses: shivammathur/setup-php@v2 + with: + php-version: "${{ matrix.php }}" + coverage: pcov + ini-values: assert.exception=1, zend.assertions=1, error_reporting=-1, log_errors_max_len=0, display_errors=On + tools: composer:v2, cs2pr + + - name: Determine composer cache directory + run: echo "COMPOSER_CACHE_DIR=$(composer config cache-dir)" >> $GITHUB_ENV + + - name: Cache dependencies installed with composer + uses: actions/cache@v3 + with: + path: ${{ env.COMPOSER_CACHE_DIR }} + key: php${{ matrix.php }}-composer-${{ hashFiles('**/composer.json') }} + restore-keys: | + php${{ matrix.php }}-composer- + + - name: Install dependencies with composer + run: composer install --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi + + - name: Collect code coverage with PHPUnit + run: vendor/bin/phpunit --colors=always --coverage-clover clover.xml + + - name: Send code coverage report to Codecov.io + uses: codecov/codecov-action@v3 + with: + token: ${{ secrets.CODECOV_TOKEN }} diff --git a/.github/workflows/cs-tests.yml b/.github/workflows/cs-tests.yml index 3da9965..e4032b1 100644 --- a/.github/workflows/cs-tests.yml +++ b/.github/workflows/cs-tests.yml @@ -40,7 +40,7 @@ jobs: restore-keys: | php${{ matrix.php }}-composer- - name: Install dependencies with composer - run: composer update --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi + run: composer install --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi - name: Run phpcs checks run: vendor/bin/phpcs diff --git a/.github/workflows/static-analysis.yml b/.github/workflows/static-analysis.yml index 74550fc..134ff5b 100644 --- a/.github/workflows/static-analysis.yml +++ b/.github/workflows/static-analysis.yml @@ -40,7 +40,7 @@ jobs: restore-keys: | php${{ matrix.php }}-composer- - name: Install dependencies with composer - run: composer update --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi + run: composer install --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi - name: Run static analysis run: vendor/bin/psalm --no-cache --output-format=github --show-info=false --threads=4 diff --git a/README.md b/README.md index 9c263a7..1db7437 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # dot-session ![OSS Lifecycle](https://img.shields.io/osslifecycle/dotkernel/dot-session) -![PHP from Packagist (specify version)](https://img.shields.io/packagist/php-v/dotkernel/dot-session/5.4.0) +![PHP from Packagist (specify version)](https://img.shields.io/packagist/php-v/dotkernel/dot-session/5.4.1) [![GitHub issues](https://img.shields.io/github/issues/dotkernel/dot-session)](https://github.com/dotkernel/dot-session/issues) [![GitHub forks](https://img.shields.io/github/forks/dotkernel/dot-session)](https://github.com/dotkernel/dot-session/network) diff --git a/composer.json b/composer.json index 034100e..f6c46c4 100644 --- a/composer.json +++ b/composer.json @@ -17,15 +17,15 @@ ], "require": { "php": "~8.1.0 || ~8.2.0", - "psr/http-message": "^1.0.1", "laminas/laminas-servicemanager": "^3.11.1", "laminas/laminas-session": "^2.12.1", - "psr/http-server-middleware": "^1.0.1", - "laminas/laminas-stdlib": "^3.7.1" + "laminas/laminas-stdlib": "^3.7.1", + "psr/http-message": "^1.0 || ^2.0", + "psr/http-server-middleware": "^1.0.1" }, "require-dev": { - "phpunit/phpunit": "^10.2", "laminas/laminas-coding-standard": "^2.5", + "phpunit/phpunit": "^10.2", "vimeo/psalm": "^5.13" }, "autoload": { diff --git a/phpunit.xml b/phpunit.xml index 4d86f46..2c29023 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -2,11 +2,16 @@ + colors="true"> ./test + + + + ./src + +