Skip to content

Commit ddad9a5

Browse files
gitHomesPhpEvgen
and
Evgen
authored
add php config for ecs version >9 (#3)
Co-authored-by: Evgen <evgeniy.kz@umbrelio.biz>
1 parent 8360392 commit ddad9a5

File tree

2 files changed

+73
-0
lines changed

2 files changed

+73
-0
lines changed

README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,26 @@ imports:
1919
- { resource: vendor/umbrellio/code-style-php/umbrellio-cs.yml }
2020
```
2121
22+
If major version of [EasyCodingStandard](https://github.com/Symplify/EasyCodingStandard) 9 or higher
23+
create config `ecs.php`:
24+
25+
```php
26+
<?php
27+
28+
declare(strict_types=1);
29+
30+
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
31+
use Symplify\EasyCodingStandard\ValueObject\Option;
32+
33+
return static function(ContainerConfigurator $containerConfigurator): void {
34+
$parameters = $containerConfigurator->parameters();
35+
36+
$parameters->set(Option::SETS, [
37+
'vendor/umbrellio/code-style-php/umbrellio-cs.php'
38+
]);
39+
};
40+
```
41+
2242
---
2343

2444
### Usage
@@ -29,6 +49,12 @@ Run in CLI:
2949
vendor/bin/ecs check src --fix --config=ecs.yml
3050
```
3151

52+
or:
53+
54+
```
55+
vendor/bin/ecs check src --fix --config=ecs.php
56+
```
57+
3258
### Dependencies (and Links)
3359

3460
- [EasyCodingStandard](https://github.com/Symplify/EasyCodingStandard) - used library.

umbrellio-cs.php

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
use PHP_CodeSniffer\Standards\Generic\Sniffs\CodeAnalysis\AssignmentInConditionSniff;
6+
use PhpCsFixer\Fixer\ClassNotation\ClassAttributesSeparationFixer;
7+
use PhpCsFixer\Fixer\Operator\NotOperatorWithSuccessorSpaceFixer;
8+
use PhpCsFixer\Fixer\Strict\DeclareStrictTypesFixer;
9+
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
10+
use Symplify\EasyCodingStandard\ValueObject\Option;
11+
use Symplify\EasyCodingStandard\ValueObject\Set\SetList;
12+
13+
return static function(ContainerConfigurator $containerConfigurator): void {
14+
$parameters = $containerConfigurator->parameters();
15+
$services = $containerConfigurator->services();
16+
17+
$parameters->set(Option::SETS, [
18+
SetList::CLEAN_CODE,
19+
SetList::PSR_12,
20+
SetList::COMMON,
21+
SetList::SYMPLIFY,
22+
]);
23+
24+
$services->set(DeclareStrictTypesFixer::class);
25+
$services->set('SlevomatCodingStandard\Sniffs\Namespaces\ReferenceUsedNamesOnlySniff')
26+
->property('allowPartialUses', true);
27+
28+
$parameters->set('skip', [
29+
NotOperatorWithSuccessorSpaceFixer::class => null,
30+
'Symplify\CodingStandard\Sniffs\Naming\TraitNameSniff' => null,
31+
'Symplify\CodingStandard\Sniffs\Naming\InterfaceNameSniff' => null,
32+
'Symplify\CodingStandard\Sniffs\Naming\ClassNameSuffixByParentSniff' => null,
33+
'Symplify\CodingStandard\Sniffs\Naming\AbstractClassNameSniff' => null,
34+
'Symplify\CodingStandard\Sniffs\Commenting\VarConstantCommentSniff' => null,
35+
'Symplify\CodingStandard\Fixer\Commenting\BlockPropertyCommentFixer' => null,
36+
'Symplify\CodingStandard\Fixer\Naming\PropertyNameMatchingTypeFixer' => null,
37+
'Symplify\CodingStandard\Fixer\Import\ImportNamespacedNameFixer' => null,
38+
'SlamCsFixer\FinalInternalClassFixer' => null,
39+
'Symplify\CodingStandard\Sniffs\CleanCode\ForbiddenStaticFunctionSniff' => null,
40+
'Symplify\CodingStandard\Sniffs\DependencyInjection\NoClassInstantiationSniff' => null,
41+
'Symplify\CodingStandard\Sniffs\Architecture\ExplicitExceptionSniff' => null,
42+
'SlevomatCodingStandard\Sniffs\Classes\UnusedPrivateElementsSniff' => null,
43+
AssignmentInConditionSniff::class => null,
44+
'SlevomatCodingStandard\Sniffs\Classes\TraitUseDeclarationSniff' => null,
45+
ClassAttributesSeparationFixer::class => null
46+
]);
47+
};

0 commit comments

Comments
 (0)