-
Notifications
You must be signed in to change notification settings - Fork 0
/
.php_cs.dist.php
88 lines (82 loc) · 2.91 KB
/
.php_cs.dist.php
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
<?php
declare(strict_types=1);
/**
* Personal Data Manager for Contao Open Source CMS
* Copyright (c) 2015-2022 Web ex Machina
*
* @category ContaoBundle
* @package Web-Ex-Machina/contao-smartgear
* @author Web ex Machina <contact@webexmachina.fr>
* @link https://github.com/Web-Ex-Machina/contao-smartgear/
*/
$header = <<<'EOF'
Personal Data Manager for Contao Open Source CMS
Copyright (c) 2015-2024 Web ex Machina
@category ContaoBundle
@package Web-Ex-Machina/contao-smartgear
@author Web ex Machina <contact@webexmachina.fr>
@link https://github.com/Web-Ex-Machina/personal-data-manager/
EOF;
// To make it work, add "--path-mode": "intersection" in your "php_cs_fixer_additional_args"
$finder = PhpCsFixer\Finder::create()
->in(__DIR__)
->exclude(['vendor'])
;
$config = new PhpCsFixer\Config();
return $config->setRules([
'@Symfony' => true,
'@Symfony:risky' => true,
'psr_autoloading'=>false, //this forces classes to match their filename, which isn't not desired for dca overrides, so it is disabled (part of @Symfony:risky)
'@PHP71Migration' => true,
'@PHP71Migration:risky' => true,
'@PHPUnit60Migration:risky' => true,
'align_multiline_comment' => true,
'array_indentation' => true,
'array_syntax' => ['syntax' => 'short'],
'combine_consecutive_issets' => true,
'combine_consecutive_unsets' => true,
'comment_to_phpdoc' => true,
'compact_nullable_typehint' => true,
'fully_qualified_strict_types' => true,
'header_comment' => ['header' => $header, 'comment_type' => 'PHPDoc'],
'heredoc_to_nowdoc' => true,
'linebreak_after_opening_tag' => true,
'list_syntax' => ['syntax' => 'short'],
'multiline_comment_opening_closing' => true,
'multiline_whitespace_before_semicolons' => [
'strategy' => 'new_line_for_chained_calls',
],
'native_function_invocation' => [
'include' => ['@compiler_optimized'],
'strict' => true,
],
'no_alternative_syntax' => true,
'no_binary_string' => true,
'no_null_property_initialization' => true,
'no_superfluous_elseif' => true,
'no_superfluous_phpdoc_tags' => true,
'no_unreachable_default_argument_value' => true,
'no_useless_else' => true,
'no_useless_return' => true,
'ordered_class_elements' => true,
'ordered_imports' => true,
'php_unit_method_casing' => true,
'php_unit_strict' => true,
'phpdoc_add_missing_param_annotation' => true,
'phpdoc_order' => true,
'phpdoc_trim_consecutive_blank_line_separation' => true,
'phpdoc_types_order' => [
'null_adjustment' => 'always_last',
'sort_algorithm' => 'none',
],
'phpdoc_var_annotation_correct_order' => true,
'return_assignment' => true,
'strict_comparison' => true,
'strict_param' => true,
'string_line_ending' => true,
'void_return' => true,
])
->setRiskyAllowed(true)
->setUsingCache(false)
->setFinder($finder)
;