/
.scrutinizer.yml
181 lines (173 loc) · 5.85 KB
/
.scrutinizer.yml
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
# Since we need to run part of your test suite, most libraries will first
# need to install vendors, for example via composer.
before_commands:
- composer install --dev
build:
filter:
paths: [src/*]
excluded_paths: [tests/*, vendor/*]
checks:
php:
code_rating: true
duplication: true
variable_existence: true
verify_access_scope_valid: true
verify_argument_usable_as_reference: true
verify_property_names: true
useless_calls: true
use_statement_alias_conflict: true
use_self_instead_of_fqcn: true
uppercase_constants: true
unused_variables: true
unused_properties: true
unreachable_code: true
switch_fallthrough_commented: true
sql_injection_vulnerabilities: true
spacing_of_function_arguments: true
spacing_around_non_conditional_operators: true
spacing_around_conditional_operators: true
space_after_cast: true
single_namespace_per_use: true
simplify_boolean_return: true
security_vulnerabilities: true
scope_indentation:
spaces_per_level: '4'
return_doc_comments: true
require_scope_for_properties: true
require_scope_for_methods: true
require_php_tag_first: true
require_braces_around_control_structures: true
remove_trailing_whitespace: true
remove_php_closing_tag: true
remove_extra_empty_lines: true
psr2_switch_declaration: true
psr2_control_structure_declaration: true
psr2_class_declaration: true
properties_in_camelcaps: true
property_assignments: true
prefer_unix_line_ending: true
prefer_sapi_constant: true
precedence_mistakes: true
precedence_in_conditions: true
phpunit_assertions: true
php5_style_constructor: true
parameters_in_camelcaps: true
parameter_non_unique: true
parameter_doc_comments: true
overriding_private_members: true
one_class_per_file: true
non_commented_empty_catch_block: true
no_unnecessary_final_modifier: true
no_unnecessary_function_call_in_for_loop: true
no_underscore_prefix_in_properties: true
no_underscore_prefix_in_methods: true
no_trailing_whitespace: true
no_space_inside_cast_operator: true
no_space_before_semicolon: true
no_space_around_object_operator: true
no_short_open_tag: true
no_short_method_names:
minimum: '3'
no_property_on_interface: true
no_non_implemented_abstract_methods: true
no_mixed_inline_html: true
no_long_variable_names:
maximum: '32'
no_goto: true
no_global_keyword: true
no_exit: true
no_eval: true
no_error_suppression: true
no_elseif_statements: true
no_duplicate_arguments: true
no_debug_code: true
no_commented_out_code: true
newline_at_end_of_file: true
missing_arguments: true
method_calls_on_non_object: true
lowercase_php_keywords: true
lowercase_basic_constants: true
line_length:
max_length: '180'
instanceof_class_exists: true
function_in_camel_caps: true
function_body_start_on_new_line: true
foreach_usable_as_reference: true
foreach_traversable: true
fix_use_statements:
remove_unused: true
preserve_multiple: false
preserve_blanklines: false
order_alphabetically: true
fix_php_opening_tag: true
fix_linefeed: true
fix_line_ending: true
fix_identation_4spaces: true
ensure_lower_case_builtin_functions: true
fix_doc_comments: true
encourage_single_quotes: true
encourage_shallow_comparison: true
encourage_postdec_operator: true
deadlock_detection_in_loops: true
deprecated_code_usage: true
classes_in_camel_caps: true
closure_use_not_conflicting: true
closure_use_modifiable: true
catch_class_exists: true
blank_line_after_namespace_declaration: true
avoid_useless_overridden_methods: true
avoid_usage_of_logical_operators: true
avoid_todo_comments: true
avoid_tab_indentation: true
avoid_superglobals: true
avoid_perl_style_comments: true
avoid_multiple_statements_on_same_line: true
avoid_fixme_comments: true
avoid_entity_manager_injection: true
avoid_length_functions_in_loops: true
avoid_duplicate_types: true
avoid_corrupting_byteorder_marks: true
avoid_closing_tag: true
avoid_conflicting_incrementers: true
avoid_aliased_php_functions: true
assignment_of_null_return: true
argument_type_checks: true
align_assignments: true
tools:
php_cs_fixer:
extensions:
- php
enabled: true
filter:
paths: ["src/*"]
config:
level: all
php_cpd:
# Minimum number of identical lines (default: 5)
min_lines: 5
# Minimum number of identical tokens (default: 70)
min_tokens: 70
# A list of names that should be scanned (default: '*.php')
names:
# Default:
- '*.php'
# A list of excluded directories.
excluded_dirs: ["vendor", "bin"]
enabled: true
php_code_sniffer:
extensions:
- php
enabled: true
filter:
paths: ["src/*"]
config:
standard: PSR2
php_mess_detector: true
php_loc:
enabled: true
excluded_dirs: [vendor, tests]
php_code_coverage:
enabled: true
test_command: ./vendor/bin/phpunit -c phpunit.xml.dist
php_hhvm: true
sensiolabs_security_checker: true