Skip to content

Commit c896e50

Browse files
committed
Revamped QA toolset
Signed-off-by: Cees-Jan Kiewiet <ceesjank@gmail.com>
1 parent affa0a1 commit c896e50

8 files changed

Lines changed: 977 additions & 2061 deletions

File tree

.github/workflows/ci.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ jobs:
88
composer-install:
99
strategy:
1010
matrix:
11-
php: [7.3, 7.4]
11+
php: [7.4]
1212
composer: [lowest, current, highest]
1313
runs-on: ubuntu-latest
1414
container:
1515
image: wyrihaximusnet/php:${{ matrix.php }}-zts-alpine3.10-dev-root
1616
steps:
1717
- uses: actions/checkout@v1
1818
- name: Cache composer packages
19-
uses: actions/cache@v1.0.1
19+
uses: actions/cache@v1
2020
with:
2121
path: ./vendor/
2222
key: ${{ matrix.composer }}-${{ matrix.php }}-${{ hashFiles('**/composer.lock') }}
@@ -32,7 +32,7 @@ jobs:
3232
qa:
3333
strategy:
3434
matrix:
35-
php: [7.3, 7.4]
35+
php: [7.4]
3636
composer: [lowest, current, highest]
3737
qa: [lint, cs, stan, psalm, composer-require-checker, composer-unused]
3838
needs: composer-install
@@ -42,7 +42,7 @@ jobs:
4242
steps:
4343
- uses: actions/checkout@v1
4444
- name: Cache composer packages
45-
uses: actions/cache@v1.0.1
45+
uses: actions/cache@v1
4646
with:
4747
path: ./vendor/
4848
key: ${{ matrix.composer }}-${{ matrix.php }}-${{ hashFiles('**/composer.lock') }}

.php_cs

Lines changed: 0 additions & 23 deletions
This file was deleted.

Makefile

Lines changed: 20 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,36 @@
1-
all:
2-
composer run-script qa-all --timeout=0
1+
# set all to phony
2+
SHELL=bash
33

4-
all-extended:
5-
composer run-script qa-all-extended --timeout=0
4+
.PHONY: *
65

7-
ci:
8-
composer run-script qa-ci --timeout=0
6+
ifneq ("$(wildcard /.dockerenv)","")
7+
DOCKER_RUN=
8+
else
9+
DOCKER_RUN=docker run --rm -it \
10+
-v `pwd`:`pwd` \
11+
-w `pwd` \
12+
"wyrihaximusnet/php:7.4-zts-alpine3.10-dev"
13+
endif
914

10-
ci-extended:
11-
composer run-script qa-ci-extended --timeout=0
15+
all: lint cs-fix cs stan psalm composer-require-checker composer-unused
1216

13-
ci-windows:
14-
composer run-script qa-ci-windows --timeout=0
15-
16-
contrib:
17-
composer run-script qa-contrib --timeout=0
17+
lint:
18+
$(DOCKER_RUN) vendor/bin/parallel-lint --exclude vendor .
1819

1920
cs:
20-
composer cs
21+
$(DOCKER_RUN) vendor/bin/phpcs --parallel=$(nproc)
2122

2223
cs-fix:
23-
composer cs-fix
24-
25-
unit:
26-
composer run-script unit --timeout=0
27-
28-
lint:
29-
composer run-script lint --timeout=0
24+
$(DOCKER_RUN) vendor/bin/phpcbf --parallel=$(nproc)
3025

3126
stan:
32-
composer run-script stan --timeout=0
27+
$(DOCKER_RUN) vendor/bin/phpstan analyse src --level max --ansi -c phpstan.neon
3328

3429
psalm:
35-
composer run-script psalm --timeout=0
30+
$(DOCKER_RUN) vendor/bin/psalm --threads=$(nproc)
3631

3732
composer-require-checker:
38-
composer run-script composer-require-checker --timeout=0
33+
$(DOCKER_RUN) vendor/bin/composer-require-checker --ignore-parse-errors --ansi -vvv
3934

4035
composer-unused:
41-
composer unused
42-
43-
unit-coverage:
44-
composer run-script unit-coverage --timeout=0
45-
46-
ci-coverage:
47-
composer ci-coverage
36+
$(DOCKER_RUN) composer unused --ansi

composer.json

Lines changed: 8 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,13 @@
1010
}
1111
],
1212
"require": {
13-
"php": "^7.3",
13+
"php": "^7.4",
1414
"ext-parallel": "*",
1515
"moneyphp/money": "^3.2 || ^3.2.1",
1616
"ocramius/package-versions": "^1.4",
1717
"react/event-loop": "^1.1",
1818
"react/promise": "^2.7",
19+
"thecodingmachine/safe": "v1.0.0 as v0.1.17",
1920
"wyrihaximus/async-test-utilities": "^1.1",
2021
"wyrihaximus/iterator-or-array-to-array": "^1.1",
2122
"wyrihaximus/pool-info": "^1.0",
@@ -25,11 +26,13 @@
2526
"wyrihaximus/ticking-promise": "^1.6"
2627
},
2728
"require-dev": {
28-
"wyrihaximus/async-test-utilities": "^1.2.1"
29+
"wyrihaximus/async-test-utilities": "dev-update-to-test-utilities-2.0 as 1.999.999",
30+
"wyrihaximus/coding-standard": "dev-master",
31+
"wyrihaximus/test-utilities": "dev-swap-cs-toolkit"
2932
},
3033
"config": {
3134
"platform": {
32-
"php": "7.3"
35+
"php": "7.4"
3336
},
3437
"sort-packages": true
3538
},
@@ -38,66 +41,14 @@
3841
"WyriHaximus\\React\\Tests\\Parallel\\": "src/"
3942
}
4043
},
44+
"minimum-stability": "beta",
45+
"prefer-stable": true,
4146
"scripts": {
4247
"post-install-cmd": [
4348
"composer normalize"
4449
],
4550
"post-update-cmd": [
4651
"composer normalize"
47-
],
48-
"ci-coverage": [
49-
"if [ -f ./build/logs/clover.xml ]; then wget https://scrutinizer-ci.com/ocular.phar && php ocular.phar code-coverage:upload --format=php-clover ./build/logs/clover.xml; fi"
50-
],
51-
"composer-require-checker": [
52-
"composer-require-checker --ignore-parse-errors --ansi -vvv --config-file=composer-require-checker.json"
53-
],
54-
"cs": [
55-
"php-cs-fixer fix --config=.php_cs --ansi --dry-run --diff --verbose --allow-risky=yes --show-progress=estimating"
56-
],
57-
"cs-fix": [
58-
"php-cs-fixer fix --config=.php_cs --ansi --verbose --allow-risky=yes --show-progress=estimating"
59-
],
60-
"ensure-installed": "composer install --ansi -n -q",
61-
"lint": [
62-
"parallel-lint --exclude vendor ."
63-
],
64-
"psalm": [
65-
"psalm --threads=$(nproc)"
66-
],
67-
"qa-all": [
68-
"composer validate --ansi",
69-
"composer normalize --ansi",
70-
"composer unused --ansi",
71-
"@lint",
72-
"@cs",
73-
"@stan",
74-
"@psalm",
75-
"@composer-require-checker"
76-
],
77-
"qa-all-extended": [
78-
"composer validate --ansi",
79-
"composer normalize --ansi",
80-
"composer unused --ansi",
81-
"@lint",
82-
"@cs",
83-
"@stan",
84-
"@psalm",
85-
"@composer-require-checker"
86-
],
87-
"qa-ci": [
88-
"@unit"
89-
],
90-
"qa-ci-extended": [
91-
"@qa-all-extended"
92-
],
93-
"qa-ci-windows": [
94-
"@qa-windows"
95-
],
96-
"qa-contrib": [
97-
"@qa-all"
98-
],
99-
"stan": [
100-
"phpstan analyse src --level max --ansi -c phpstan.neon"
10152
]
10253
}
10354
}

0 commit comments

Comments
 (0)