Skip to content

Commit 59107fc

Browse files
committed
Add a phpstan lvl 6, Add rector action with Symfony and phpunit configuration, validate cs-fixer
1 parent 85078bb commit 59107fc

28 files changed

+4907
-69
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
1-
name: PHPStan level 5
1+
name: PHPStan level 6
22
on: push
33
jobs:
44
phpstan:
55
runs-on: ubuntu-latest
66
steps:
7-
- uses: actions/checkout@v2
8-
- uses: actions/cache@v2
7+
- uses: actions/checkout@v3
8+
- uses: actions/cache@v3
99
with:
1010
path: '**/vendor'
1111
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
1212
restore-keys: |
1313
${{ runner.os }}-composer-
14-
- uses: php-actions/composer@v5
14+
- uses: php-actions/composer@v6
1515
with:
1616
args: --prefer-dist
17-
php_version: 8.0
17+
php_version: '8.2'
1818
- name: PHPStan
19-
uses: php-actions/phpstan@v2
19+
uses: php-actions/phpstan@v3
2020
with:
2121
path: src/
22-
level: 4
23-
php_version: 8.0
22+
level: 6
23+
php_version: '8.2'

.github/workflows/phpstan-7.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,20 @@ jobs:
44
phpstan:
55
runs-on: ubuntu-latest
66
steps:
7-
- uses: actions/checkout@v2
8-
- uses: actions/cache@v2
7+
- uses: actions/checkout@v3
8+
- uses: actions/cache@v3
99
with:
1010
path: '**/vendor'
1111
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
1212
restore-keys: |
1313
${{ runner.os }}-composer-
14-
- uses: php-actions/composer@v5
14+
- uses: php-actions/composer@v6
1515
with:
1616
args: --prefer-dist
17-
php_version: 8.0
17+
php_version: '8.2'
1818
- name: PHPStan
19-
uses: php-actions/phpstan@v2
19+
uses: php-actions/phpstan@v3
2020
with:
2121
path: src/
2222
level: 7
23-
php_version: 8.0
23+
php_version: '8.2'

.github/workflows/phpstan-8.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,20 @@ jobs:
44
phpstan:
55
runs-on: ubuntu-latest
66
steps:
7-
- uses: actions/checkout@v2
8-
- uses: actions/cache@v2
7+
- uses: actions/checkout@v3
8+
- uses: actions/cache@v3
99
with:
1010
path: '**/vendor'
1111
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
1212
restore-keys: |
1313
${{ runner.os }}-composer-
14-
- uses: php-actions/composer@v5
14+
- uses: php-actions/composer@v6
1515
with:
1616
args: --prefer-dist
17-
php_version: 8.0
17+
php_version: '8.2'
1818
- name: PHPStan
19-
uses: php-actions/phpstan@v2
19+
uses: php-actions/phpstan@v3
2020
with:
2121
path: src/
2222
level: 8
23-
php_version: 8.0
23+
php_version: '8.2'

.github/workflows/quality.yaml

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,38 @@
1-
name: Quality (PHPStan level 4)
1+
name: Quality (PHPStan level 5)
22
on: push
33
jobs:
44
cs-fixer:
55
runs-on: ubuntu-latest
66
steps:
7-
- uses: actions/checkout@v2
7+
- uses: actions/checkout@v3
8+
- uses: shivammathur/setup-php@v2
9+
with:
10+
php-version: '8.2'
11+
tools: composer:v2
12+
coverage: none
813
- name: Cs-Fixer
914
run: |
10-
wget -q https://cs.symfony.com/download/php-cs-fixer-v2.phar -O php-cs-fixer
15+
wget -q https://cs.symfony.com/download/php-cs-fixer-v3.phar -O php-cs-fixer
1116
chmod a+x php-cs-fixer
1217
PHP_CS_FIXER_IGNORE_ENV=true ./php-cs-fixer fix src --dry-run
1318
1419
phpstan:
1520
runs-on: ubuntu-latest
1621
steps:
17-
- uses: actions/checkout@v2
18-
- uses: actions/cache@v2
22+
- uses: actions/checkout@v3
23+
- uses: actions/cache@v3
1924
with:
2025
path: '**/vendor'
2126
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
2227
restore-keys: |
2328
${{ runner.os }}-composer-
24-
- uses: php-actions/composer@v5
29+
- uses: php-actions/composer@v6
2530
with:
2631
args: --prefer-dist
27-
php_version: 8.0
32+
php_version: '8.2'
2833
- name: PHPStan
29-
uses: php-actions/phpstan@v2
34+
uses: php-actions/phpstan@v3
3035
with:
3136
path: src/
32-
level: 4
33-
php_version: 8.0
37+
level: 5
38+
php_version: '8.2'

.github/workflows/rector.yaml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# github action that checks code with Rector
2+
name: Rector
3+
4+
on:
5+
pull_request: null
6+
7+
jobs:
8+
rector:
9+
runs-on: ubuntu-latest
10+
if: github.event.pull_request.head.repo.full_name == 'php-etl/pipeline-contracts'
11+
steps:
12+
-
13+
if: github.event.pull_request.head.repo.full_name == github.repository
14+
uses: actions/checkout@v3
15+
with:
16+
# Must be used to trigger workflow after push
17+
token: ${{ secrets.ACCESS_TOKEN }}
18+
19+
-
20+
uses: shivammathur/setup-php@v2
21+
with:
22+
php-version: '8.2'
23+
coverage: none
24+
25+
- uses: "ramsey/composer-install@v2"
26+
27+
- run: bin/rector --ansi
28+
29+
-
30+
# commit only to core contributors who have repository access
31+
uses: stefanzweifel/git-auto-commit-action@v4
32+
with:
33+
commit_message: '[rector] Rector fixes'
34+
commit_author: 'GitHub Action <actions@github.com>'
35+
commit_user_email: 'action@github.com'

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
11
/vendor/
2+
bin/
3+
.php-cs-fixer.cache

.php-cs-fixer.dist.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
return (new PhpCsFixer\Config())
88
->setRiskyAllowed(true)
99
->setRules([
10+
'@PHP82Migration' => true,
1011
'@PHP81Migration' => true,
1112
'@PHP80Migration:risky' => true,
1213
'@PHPUnit84Migration:risky' => true,

composer.json

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,20 +15,31 @@
1515
}
1616
],
1717
"require": {
18-
"php": "^8.0",
19-
"php-etl/bucket-contracts": "^0.1.0"
18+
"php": "^8.2",
19+
"php-etl/bucket-contracts": "^0.2@dev"
20+
},
21+
"require-dev": {
22+
"phpstan/phpstan": "^1.10",
23+
"phpunit/phpunit": "^9.5 || ^10.0",
24+
"friendsofphp/php-cs-fixer": "^3.0",
25+
"infection/infection": "^0.26.18",
26+
"rector/rector": "^0.15"
2027
},
2128
"autoload": {
2229
"psr-4": {
2330
"Kiboko\\Contract\\Pipeline\\": "src/"
2431
}
2532
},
2633
"config": {
27-
"bin-dir": "bin"
34+
"bin-dir": "bin",
35+
"allow-plugins": {
36+
"infection/extension-installer": true
37+
}
2838
},
2939
"extra": {
3040
"branch-alias": {
31-
"dev-main": "0.3.x-dev"
41+
"dev-main": "0.4.x-dev",
42+
"dev-feature/qualityflow-improvments": "0.4.x-dev"
3243
}
3344
}
3445
}

0 commit comments

Comments
 (0)