Skip to content

Commit 98b61de

Browse files
committed
New codestyle and phpstan settings
1 parent 21528fc commit 98b61de

32 files changed

+2333
-1450
lines changed

.github/workflows/php.yml

Lines changed: 73 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -4,100 +4,96 @@ on:
44
push:
55
branches: [ master ]
66
paths-ignore:
7-
- '**.md'
7+
- '**.md'
88
pull_request:
99
branches: [ master ]
1010
paths-ignore:
11-
- '**.md'
11+
- '**.md'
1212

1313
jobs:
1414
tests:
1515
runs-on: ubuntu-latest
16-
1716
steps:
18-
- uses: actions/checkout@v2
17+
- uses: actions/checkout@v2
1918

20-
- name: Setup PHP
21-
uses: shivammathur/setup-php@v2
22-
with:
23-
php-version: '8.1'
24-
ini-values: zend.assertions=1, assert.exception=1
25-
coverage: xdebug
26-
env:
27-
update: true
19+
- name: Setup PHP
20+
uses: shivammathur/setup-php@v2
21+
with:
22+
php-version: '8.5'
23+
ini-values: zend.assertions=1, assert.exception=1
24+
coverage: xdebug
25+
env:
26+
update: true
2827

29-
- name: Validate composer.json and composer.lock
30-
run: composer validate
28+
- name: Validate composer.json and composer.lock
29+
run: composer validate
3130

32-
- name: Install dependencies
33-
run: composer install --prefer-dist --no-progress --no-suggest
31+
- name: Install dependencies
32+
run: composer install --prefer-dist --no-progress --no-suggest
3433

35-
- name: Tests
36-
run: composer run-script phpunit
34+
- name: Tests
35+
run: composer run-script phpunit
3736

38-
- name: Codecov
39-
uses: codecov/codecov-action@v1.0.14
40-
with:
41-
file: './build/phpunit.clover.xml'
37+
- name: Codecov
38+
uses: codecov/codecov-action@v1.0.14
39+
with:
40+
file: './build/phpunit.clover.xml'
4241

4342
mutation:
4443
runs-on: ubuntu-latest
45-
needs: [tests]
46-
44+
needs: [ tests ]
4745
steps:
48-
- uses: actions/checkout@v2
46+
- uses: actions/checkout@v2
4947

50-
- name: Setup PHP
51-
uses: shivammathur/setup-php@v2
52-
with:
53-
php-version: '8.1'
54-
ini-values: zend.assertions=1, assert.exception=1
55-
coverage: xdebug
56-
env:
57-
update: true
48+
- name: Setup PHP
49+
uses: shivammathur/setup-php@v2
50+
with:
51+
php-version: '8.5'
52+
ini-values: zend.assertions=1, assert.exception=1
53+
coverage: xdebug
54+
env:
55+
update: true
5856

59-
- name: Validate composer.json and composer.lock
60-
run: composer validate
57+
- name: Validate composer.json and composer.lock
58+
run: composer validate
6159

62-
- name: Install dependencies
63-
run: composer install --prefer-dist --no-progress --no-suggest
60+
- name: Install dependencies
61+
run: composer install --prefer-dist --no-progress --no-suggest
6462

65-
- name: Mutation tests
66-
run: composer run-script infection
63+
- name: Mutation tests
64+
run: composer run-script infection
6765

6866
phpstan:
6967
runs-on: ubuntu-latest
70-
7168
steps:
72-
- uses: actions/checkout@v2
69+
- uses: actions/checkout@v2
7370

74-
- name: Setup PHP
75-
uses: shivammathur/setup-php@v2
76-
with:
77-
php-version: '8.1'
78-
ini-values: zend.assertions=1, assert.exception=1
79-
env:
80-
update: true
71+
- name: Setup PHP
72+
uses: shivammathur/setup-php@v2
73+
with:
74+
php-version: '8.5'
75+
ini-values: zend.assertions=1, assert.exception=1
76+
env:
77+
update: true
8178

82-
- name: Validate composer.json and composer.lock
83-
run: composer validate
79+
- name: Validate composer.json and composer.lock
80+
run: composer validate
8481

85-
- name: Install dependencies
86-
run: composer install --prefer-dist --no-progress --no-suggest
82+
- name: Install dependencies
83+
run: composer install --prefer-dist --no-progress --no-suggest
8784

88-
- name: Phpstan
89-
run: composer run-script phpstan
85+
- name: Phpstan
86+
run: composer run-script phpstan
9087

9188
codestyle:
9289
runs-on: ubuntu-latest
93-
9490
steps:
9591
- uses: actions/checkout@v2
9692

9793
- name: Setup PHP
9894
uses: shivammathur/setup-php@v2
9995
with:
100-
php-version: '8.1'
96+
php-version: '8.5'
10197
env:
10298
update: true
10399

@@ -109,3 +105,24 @@ jobs:
109105

110106
- name: Codestyle
111107
run: composer run-script codestyle
108+
109+
dependencies:
110+
runs-on: ubuntu-latest
111+
steps:
112+
- uses: actions/checkout@v2
113+
114+
- name: Setup PHP
115+
uses: shivammathur/setup-php@v2
116+
with:
117+
php-version: '8.5'
118+
env:
119+
update: true
120+
121+
- name: Validate composer.json and composer.lock
122+
run: composer validate
123+
124+
- name: Install dependencies
125+
run: composer install --prefer-dist --no-progress --no-suggest
126+
127+
- name: Dependencies
128+
run: composer run-script dependencies

composer-dependency-analyser.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?php
2+
3+
declare(strict_types = 1);
4+
5+
use ShipMonk\ComposerDependencyAnalyser\Config\Configuration;
6+
use ShipMonk\ComposerDependencyAnalyser\Config\ErrorType;
7+
8+
return (new Configuration())
9+
->ignoreErrorsOnPackages(['infinityloop-dev/graphpinator-upload'], [ErrorType::DEV_DEPENDENCY_IN_PROD]);

composer.json

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,26 @@
1212
}
1313
],
1414
"require": {
15-
"php": ">=8.1",
15+
"php": ">=8.2",
1616
"ext-fileinfo": "*",
17-
"infinityloop-dev/graphpinator": "^1.6",
18-
"infinityloop-dev/utils": "^2.3"
17+
"ext-mbstring": "*",
18+
"infinityloop-dev/graphpinator": "^2.0",
19+
"infinityloop-dev/graphpinator-common": "^2.0"
1920
},
2021
"require-dev": {
21-
"infinityloop-dev/graphpinator-upload": "^1.1",
22+
"infection/infection": "^0.29",
23+
"infinityloop-dev/graphpinator-tokenizer": "^1.3",
24+
"infinityloop-dev/graphpinator-upload": "^2.0",
25+
"infinityloop-dev/utils": "^2.3",
26+
"phpstan/extension-installer": "^1.4",
27+
"phpstan/phpstan": "^2.0",
28+
"phpstan/phpstan-deprecation-rules": "^2.0",
29+
"phpstan/phpstan-strict-rules": "^2.0",
2230
"phpunit/phpunit": "^10.4",
23-
"infection/infection": "^0.27 || ^0.29",
24-
"phpstan/phpstan": "^1.10 || ^2.0",
25-
"infinityloop-dev/coding-standard": "^0.2"
31+
"psr/http-message": "^2.0",
32+
"shipmonk/composer-dependency-analyser": "^1.8",
33+
"thecodingmachine/phpstan-safe-rule": "^1.4",
34+
"webthinx/codestyle": "^1.1"
2635
},
2736
"suggest": {
2837
"infinityloop-dev/graphpinator-upload": "Combine Upload type and uploadConstraint directive."
@@ -33,11 +42,12 @@
3342
"Composer\\Config::disableProcessTimeout",
3443
"infection -j$(nproc)"
3544
],
36-
"phpstan": "phpstan analyze --level 2 src",
37-
"phpstan-next": "phpstan analyze --level 3 src",
45+
"phpstan": "phpstan analyze --level 4 src",
46+
"phpstan-next": "phpstan analyze --level 5 src",
3847
"phpstan-max": "phpstan analyze --level max src",
39-
"codestyle": "phpcs --standard=vendor/infinityloop-dev/coding-standard/InfinityloopCodingStandard/ruleset.xml --extensions=php src tests",
40-
"codestyle-fix": "phpcbf --standard=vendor/infinityloop-dev/coding-standard/InfinityloopCodingStandard/ruleset.xml --extensions=php src tests"
48+
"codestyle": "phpcs --extensions=php src tests",
49+
"codestyle-fix": "phpcbf --extensions=php src tests",
50+
"dependencies": "composer-dependency-analyser"
4151
},
4252
"autoload": {
4353
"psr-4": {
@@ -49,10 +59,13 @@
4959
"Graphpinator\\ConstraintDirectives\\Tests\\": "tests/"
5060
}
5161
},
62+
"minimum-stability": "RC",
5263
"config": {
5364
"allow-plugins": {
5465
"dealerdirect/phpcodesniffer-composer-installer": true,
55-
"infection/extension-installer": true
56-
}
66+
"infection/extension-installer": true,
67+
"phpstan/extension-installer": true
68+
},
69+
"sort-packages": true
5770
}
5871
}

0 commit comments

Comments
 (0)