Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 67 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ name: CI

env:
COMPOSER_ROOT_VERSION: 12.4.x-dev
PHP_VERSION: 8.4

jobs:
coding-guidelines:
Expand All @@ -17,12 +18,23 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
fetch-depth: 1
ref: ${{ github.event.pull_request.head.sha || github.sha }}

- name: Use local branch
shell: bash
run: |
BRANCH=$([ "${{ github.event_name }}" == "pull_request" ] && echo "${{ github.head_ref }}" || echo "${{ github.ref_name }}")
git branch -D $BRANCH 2>/dev/null || true
git branch $BRANCH HEAD
git checkout $BRANCH

- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.3
php-version: ${{ env.PHP_VERSION }}
extensions: none, iconv, json, phar, tokenizer
coverage: none
tools: none
Expand All @@ -37,17 +49,41 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
fetch-depth: 1
ref: ${{ github.event.pull_request.head.sha || github.sha }}

- name: Use local branch
shell: bash
run: |
BRANCH=$([ "${{ github.event_name }}" == "pull_request" ] && echo "${{ github.head_ref }}" || echo "${{ github.ref_name }}")
git branch -D $BRANCH 2>/dev/null || true
git branch $BRANCH HEAD
git checkout $BRANCH

- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.4
php-version: ${{ env.PHP_VERSION }}
extensions: none, ctype, curl, dom, iconv, mbstring, opcache, simplexml, tokenizer, xml, xmlwriter
coverage: none
tools: none

- name: Install dependencies with Composer
- name: Get Composer cache directory
id: composer-cache
shell: bash
run: |
echo "dir=$(composer config cache-files-dir)" >> "$GITHUB_OUTPUT"

- name: Cache Composer cache directory
uses: actions/cache@v4
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ runner.os }}-composer-

- name: Update dependencies with composer
run: ./tools/composer update --no-interaction --no-ansi --no-progress

- name: Run PHPStan
Expand Down Expand Up @@ -84,7 +120,18 @@ jobs:
run: git config --global core.autocrlf false

- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
fetch-depth: 1
ref: ${{ github.event.pull_request.head.sha || github.sha }}

- name: Use local branch
shell: bash
run: |
BRANCH=$([ "${{ github.event_name }}" == "pull_request" ] && echo "${{ github.head_ref }}" || echo "${{ github.ref_name }}")
git branch -D $BRANCH 2>/dev/null || true
git branch $BRANCH HEAD
git checkout $BRANCH

- name: Install PHP with extensions
uses: shivammathur/setup-php@v2
Expand All @@ -95,11 +142,24 @@ jobs:
ini-values: ${{ env.PHP_INI_VALUES }}
tools: none

- name: Get Composer cache directory
id: composer-cache
shell: bash
run: |
echo "dir=$(composer config cache-files-dir)" >> "$GITHUB_OUTPUT"

- name: Cache Composer cache directory
uses: actions/cache@v4
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ runner.os }}-composer-

- name: Install dependencies with Composer
run: php ./tools/composer update --no-ansi --no-interaction --no-progress

- name: Run tests with PHPUnit
run: ./vendor/bin/phpunit --log-junit test-results.xml --coverage-openclover=code-coverage.xml
run: vendor/bin/phpunit --log-junit test-results.xml --coverage-clover=code-coverage.xml

- name: Upload test results to Codecov.io
if: ${{ !cancelled() }}
Expand Down
4 changes: 2 additions & 2 deletions .phive/phars.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<phive xmlns="https://phar.io/phive">
<phar name="php-cs-fixer" version="^3.86" installed="3.86.0" location="./tools/php-cs-fixer" copy="true"/>
<phar name="composer" version="^2.8" installed="2.8.11" location="./tools/composer" copy="true"/>
<phar name="php-cs-fixer" version="^3.86" installed="3.88.0" location="./tools/php-cs-fixer" copy="true"/>
<phar name="composer" version="^2.8" installed="2.8.12" location="./tools/composer" copy="true"/>
</phive>
6 changes: 3 additions & 3 deletions tools/.phpstan/composer.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"require-dev": {
"phpstan/phpstan": "^2.1.22",
"phpstan/phpstan": "^2.1.29",
"phpstan/extension-installer": "^1.4.3",
"phpstan/phpstan-strict-rules": "^2.0.6",
"phpstan/phpstan-strict-rules": "^2.0.7",
"tomasvotruba/type-coverage": "^2.0.2",
"ergebnis/phpstan-rules": "^2.11.0"
"ergebnis/phpstan-rules": "^2.12.0"
},
"config": {
"allow-plugins": {
Expand Down
43 changes: 21 additions & 22 deletions tools/.phpstan/composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

47 changes: 23 additions & 24 deletions tools/.phpstan/vendor/composer/installed.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,17 @@
"packages": [
{
"name": "ergebnis/phpstan-rules",
"version": "2.11.0",
"version_normalized": "2.11.0.0",
"version": "2.12.0",
"version_normalized": "2.12.0.0",
"source": {
"type": "git",
"url": "https://github.com/ergebnis/phpstan-rules.git",
"reference": "505fead92d89daeb6aa045e92a3e77b55f4ca6a5"
"reference": "c4e0121a937b3b551f800a86e7d78794da2783ea"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/ergebnis/phpstan-rules/zipball/505fead92d89daeb6aa045e92a3e77b55f4ca6a5",
"reference": "505fead92d89daeb6aa045e92a3e77b55f4ca6a5",
"url": "https://api.github.com/repos/ergebnis/phpstan-rules/zipball/c4e0121a937b3b551f800a86e7d78794da2783ea",
"reference": "c4e0121a937b3b551f800a86e7d78794da2783ea",
"shasum": ""
},
"require": {
Expand All @@ -25,10 +25,9 @@
"doctrine/orm": "^2.20.0 || ^3.3.0",
"ergebnis/composer-normalize": "^2.47.0",
"ergebnis/license": "^2.6.0",
"ergebnis/php-cs-fixer-config": "^6.52.0",
"ergebnis/phpunit-slow-test-detector": "^2.19.1",
"ergebnis/php-cs-fixer-config": "^6.54.0",
"ergebnis/phpunit-slow-test-detector": "^2.20.0",
"fakerphp/faker": "^1.24.1",
"nette/di": "^3.1.10",
"phpstan/extension-installer": "^1.4.3",
"phpstan/phpstan-deprecation-rules": "^2.0.3",
"phpstan/phpstan-phpunit": "^2.0.7",
Expand All @@ -38,7 +37,7 @@
"symfony/finder": "^5.4.45",
"symfony/process": "^5.4.47"
},
"time": "2025-08-19T07:58:25+00:00",
"time": "2025-09-07T13:31:33+00:00",
"type": "phpstan-extension",
"extra": {
"phpstan": {
Expand Down Expand Up @@ -222,17 +221,17 @@
},
{
"name": "phpstan/phpstan",
"version": "2.1.22",
"version_normalized": "2.1.22.0",
"version": "2.1.29",
"version_normalized": "2.1.29.0",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpstan.git",
"reference": "41600c8379eb5aee63e9413fe9e97273e25d57e4"
"url": "https://github.com/phpstan/phpstan-phar-composer-source.git",
"reference": "git"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/41600c8379eb5aee63e9413fe9e97273e25d57e4",
"reference": "41600c8379eb5aee63e9413fe9e97273e25d57e4",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/d618573eed4a1b6b75e37b2e0b65ac65c885d88e",
"reference": "d618573eed4a1b6b75e37b2e0b65ac65c885d88e",
"shasum": ""
},
"require": {
Expand All @@ -241,7 +240,7 @@
"conflict": {
"phpstan/phpstan-shim": "*"
},
"time": "2025-08-04T19:17:37+00:00",
"time": "2025-09-25T06:58:18+00:00",
"bin": [
"phpstan",
"phpstan.phar"
Expand Down Expand Up @@ -283,30 +282,30 @@
},
{
"name": "phpstan/phpstan-strict-rules",
"version": "2.0.6",
"version_normalized": "2.0.6.0",
"version": "2.0.7",
"version_normalized": "2.0.7.0",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpstan-strict-rules.git",
"reference": "f9f77efa9de31992a832ff77ea52eb42d675b094"
"reference": "d6211c46213d4181054b3d77b10a5c5cb0d59538"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/f9f77efa9de31992a832ff77ea52eb42d675b094",
"reference": "f9f77efa9de31992a832ff77ea52eb42d675b094",
"url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/d6211c46213d4181054b3d77b10a5c5cb0d59538",
"reference": "d6211c46213d4181054b3d77b10a5c5cb0d59538",
"shasum": ""
},
"require": {
"php": "^7.4 || ^8.0",
"phpstan/phpstan": "^2.0.4"
"phpstan/phpstan": "^2.1.29"
},
"require-dev": {
"php-parallel-lint/php-parallel-lint": "^1.2",
"phpstan/phpstan-deprecation-rules": "^2.0",
"phpstan/phpstan-phpunit": "^2.0",
"phpunit/phpunit": "^9.6"
},
"time": "2025-07-21T12:19:29+00:00",
"time": "2025-09-26T11:19:08+00:00",
"type": "phpstan-extension",
"extra": {
"phpstan": {
Expand All @@ -328,7 +327,7 @@
"description": "Extra strict and opinionated rules for PHPStan",
"support": {
"issues": "https://github.com/phpstan/phpstan-strict-rules/issues",
"source": "https://github.com/phpstan/phpstan-strict-rules/tree/2.0.6"
"source": "https://github.com/phpstan/phpstan-strict-rules/tree/2.0.7"
},
"install-path": "../phpstan/phpstan-strict-rules"
},
Expand Down
Loading
Loading