summaryrefslogtreecommitdiffstats
path: root/composer.json
blob: 0434e876016545ad7f94efd6c7ff1b42251b9e97 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
{
    "name": "friendsofphp/php-cs-fixer",
    "description": "A tool to automatically fix PHP code style",
    "license": "MIT",
    "type": "application",
    "keywords": [
        "fixer",
        "standards",
        "static analysis",
        "static code analysis"
    ],
    "authors": [
        {
            "name": "Fabien Potencier",
            "email": "fabien@symfony.com"
        },
        {
            "name": "Dariusz Rumiński",
            "email": "dariusz.ruminski@gmail.com"
        }
    ],
    "require": {
        "php": "^7.4 || ^8.0",
        "ext-filter": "*",
        "ext-json": "*",
        "ext-tokenizer": "*",
        "composer/semver": "^3.4",
        "composer/xdebug-handler": "^3.0.3",
        "sebastian/diff": "^4.0 || ^5.0 || ^6.0",
        "symfony/console": "^5.4 || ^6.0 || ^7.0",
        "symfony/event-dispatcher": "^5.4 || ^6.0 || ^7.0",
        "symfony/filesystem": "^5.4 || ^6.0 || ^7.0",
        "symfony/finder": "^5.4 || ^6.0 || ^7.0",
        "symfony/options-resolver": "^5.4 || ^6.0 || ^7.0",
        "symfony/polyfill-mbstring": "^1.28",
        "symfony/polyfill-php80": "^1.28",
        "symfony/polyfill-php81": "^1.28",
        "symfony/process": "^5.4 || ^6.0 || ^7.0",
        "symfony/stopwatch": "^5.4 || ^6.0 || ^7.0"
    },
    "require-dev": {
        "facile-it/paraunit": "^1.3 || ^2.0",
        "infection/infection": "^0.27.11",
        "justinrainbow/json-schema": "^5.2",
        "keradus/cli-executor": "^2.1",
        "mikey179/vfsstream": "^1.6.11",
        "php-coveralls/php-coveralls": "^2.7",
        "php-cs-fixer/accessible-object": "^1.1",
        "php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.4",
        "php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.4",
        "phpunit/phpunit": "^9.6 || ^10.5.5 || ^11.0.2",
        "symfony/var-dumper": "^5.4 || ^6.0 || ^7.0",
        "symfony/yaml": "^5.4 || ^6.0 || ^7.0"
    },
    "suggest": {
        "ext-dom": "For handling output formats in XML",
        "ext-mbstring": "For handling non-UTF8 characters."
    },
    "autoload": {
        "psr-4": {
            "PhpCsFixer\\": "src/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "PhpCsFixer\\Tests\\": "tests/"
        }
    },
    "bin": [
        "php-cs-fixer"
    ],
    "config": {
        "allow-plugins": {
            "ergebnis/composer-normalize": true,
            "infection/extension-installer": false
        },
        "prefer-stable": true,
        "sort-packages": true
    },
    "scripts": {
        "post-autoload-dump": [
            "@install-tools"
        ],
        "auto-review": [
            "Composer\\Config::disableProcessTimeout",
            "paraunit run --testsuite auto-review"
        ],
        "cs:check": "@php php-cs-fixer check --verbose --diff",
        "cs:fix": "@php php-cs-fixer fix",
        "cs:fix:parallel": "echo '🔍 Will run in batches of 50 files.'; if [[ -f .php-cs-fixer.php ]]; then FIXER_CONFIG=.php-cs-fixer.php; else FIXER_CONFIG=.php-cs-fixer.dist.php; fi; php php-cs-fixer list-files --config=$FIXER_CONFIG | xargs -n 50 -P 8 php php-cs-fixer fix --config=$FIXER_CONFIG --path-mode intersection 2> /dev/null",
        "docs": "@php dev-tools/doc.php",
        "infection": "@test:mutation",
        "install-tools": "@composer --working-dir=dev-tools install",
        "mess-detector": "@php dev-tools/vendor/bin/phpmd . ansi dev-tools/mess-detector/phpmd.xml --exclude vendor/*,dev-tools/vendor/*,dev-tools/phpstan/*,tests/Fixtures/*",
        "normalize": [
            "@composer normalize --working-dir=dev-tools --dry-run ../composer.json",
            "@composer normalize --working-dir=dev-tools --dry-run composer.json"
        ],
        "phpstan": "@php -d memory_limit=512M dev-tools/vendor/bin/phpstan analyse",
        "phpstan:baseline": "@php -d memory_limit=512M dev-tools/vendor/bin/phpstan analyse --generate-baseline=./dev-tools/phpstan/baseline.php",
        "qa": "@quality-assurance",
        "quality-assurance": [
            "Composer\\Config::disableProcessTimeout",
            "@install-tools --quiet",
            "@self-check",
            "@static-analysis",
            "@test"
        ],
        "require-checker": "@php dev-tools/vendor/bin/composer-require-checker check composer.json --config-file .composer-require-checker.json",
        "sa": "@static-analysis",
        "self-check": [
            "./dev-tools/check_file_permissions.sh",
            "./dev-tools/check_trailing_spaces.sh",
            "@normalize",
            "@unused-deps",
            "@require-checker",
            "@auto-review"
        ],
        "static-analysis": [
            "@cs:check",
            "@phpstan",
            "@mess-detector"
        ],
        "test": "@test:all",
        "test:all": [
            "@test:unit",
            "@test:integration"
        ],
        "test:coverage": [
            "Composer\\Config::disableProcessTimeout",
            "@composer show facile-it/paraunit ^2 && (paraunit coverage --testsuite unit --pass-through=--exclude-group=covers-nothing) || (paraunit coverage --testsuite unit --exclude-group covers-nothing)"
        ],
        "test:integration": [
            "Composer\\Config::disableProcessTimeout",
            "paraunit run --testsuite integration"
        ],
        "test:mutation": [
            "Composer\\Config::disableProcessTimeout",
            "infection --threads=max --only-covered --min-covered-msi=80"
        ],
        "test:short-open-tag": [
            "Composer\\Config::disableProcessTimeout",
            "@php -d short_open_tag=1 ./vendor/bin/phpunit --do-not-cache-result --testsuite short-open-tag"
        ],
        "test:smoke": [
            "Composer\\Config::disableProcessTimeout",
            "paraunit run --testsuite smoke"
        ],
        "test:unit": [
            "Composer\\Config::disableProcessTimeout",
            "paraunit run --testsuite unit"
        ],
        "unused-deps": "@php dev-tools/vendor/bin/composer-unused --excludePackage=composer/xdebug-handler"
    },
    "scripts-descriptions": {
        "auto-review": "Execute Auto-review",
        "cs:check": "Check coding standards",
        "cs:fix": "Fix coding standards",
        "cs:fix:parallel": "Fix coding standards in naive parallel mode (using xargs)",
        "docs": "Regenerate docs",
        "infection": "Alias for 'test:mutation'",
        "install-tools": "Install DEV tools",
        "mess-detector": "Analyse code with Mess Detector",
        "normalize": "Run normalization for composer.json files",
        "phpstan": "Run PHPStan analysis",
        "phpstan:baseline": "Dump PHPStan baseline file - use only for updating, do not add new errors when possible",
        "post-autoload-dump": "Run additional tasks after installing/updating main dependencies",
        "qa": "Alias for 'quality-assurance'",
        "quality-assurance": "Run QA suite",
        "require-checker": "Verifies if codebase does not contain soft dependencies",
        "sa": "Alias for 'static-analysis'",
        "self-check": "Run set of self-checks ensuring repository's validity",
        "static-analysis": "Run static analysis",
        "test": "Alias for 'test:all'",
        "test:all": "Run Unit and Integration tests (but *NOT* Smoke tests)",
        "test:coverage": "Run tests that provide code coverage",
        "test:integration": "Run Integration tests",
        "test:mutation": "Run mutation tests",
        "test:short-open-tag": "Run tests with \"short_open_tag\" enabled",
        "test:smoke": "Run Smoke tests",
        "test:unit": "Run Unit tests",
        "unused-deps": "Verifies if app has dependencies that are not used"
    }
}