Checkout Config
filter:
excluded_paths:
- vendor/*
- tests/*
- languages/*
- includes/libraries/*
- bin/*
- assets/*
- templates/*
before_commands:
- 'composer install --dev --prefer-source'
tools:
external_code_coverage:
timeout: 900 # wait for 15 minutes instead of 5
php_mess_detector:
config:
code_size_rules:
cyclomatic_complexity: false
npath_complexity: false
excessive_method_length: false
excessive_class_length: false
excessive_parameter_list: false
excessive_public_count: false
too_many_fields: false
too_many_methods: false
excessive_class_complexity: false
php_code_sniffer:
config:
standard: WordPress
sniffs: { wordpress: { arrays: { array_declaration_sniff: true }, classes: { valid_class_name_sniff: true }, files: { file_name_sniff: true }, formatting: { multiple_statement_alignment_sniff: true }, functions: { function_call_signature_sniff: true, function_declaration_argument_spacing_sniff: true }, naming_conventions: { valid_function_name_sniff: true }, objects: { object_instantiation_sniff: true }, php: { discouraged_functions_sniff: true }, strings: { double_quote_usage_sniff: true }, white_space: { control_structure_spacing_sniff: true, operator_spacing_sniff: true, php_indent_sniff: true }, xss: { escape_output_sniff: true } } }
php_code_coverage: true
sensiolabs_security_checker: true
php_pdepend: true
php_loc:
enabled: true
excluded_dirs: [vendor, tests, languages, includes/libraries, bin, assets, templates]
php_cpd:
enabled: true
excluded_dirs: [vendor, tests, languages, includes/libraries, bin, assets, templates]
checks:
php:
psr2_switch_declaration: false
psr2_control_structure_declaration: false
psr2_class_declaration: false
one_class_per_file: false
avoid_superglobals: false
require_php_tag_first: false
code_rating: true
duplication: true
variable_existence: true
useless_calls: true
use_statement_alias_conflict: true
unused_variables: false
unused_properties: true
unused_parameters: false
unreachable_code: true
sql_injection_vulnerabilities: true
security_vulnerabilities: true
precedence_mistakes: true
precedence_in_conditions: true
parameter_non_unique: true
no_property_on_interface: true
no_non_implemented_abstract_methods: true
deprecated_code_usage: true
closure_use_not_conflicting: true
closure_use_modifiable: true
avoid_useless_overridden_methods: true
avoid_conflicting_incrementers: true
assignment_of_null_return: true
unused_methods: true
too_many_arguments: true
no_debug_code: true
missing_arguments: true
return_doc_comments: true
argument_type_checks: false
no_error_suppression: false
property_assignments: false
Repository Config
filter:
excluded_paths:
- 'tests/*'
- 'bin/*'
checks:
php:
fix_php_opening_tag: false
remove_php_closing_tag: false
one_class_per_file: false
side_effects_or_types: false
no_mixed_inline_html: false
require_braces_around_control_structures: false
php5_style_constructor: false
no_global_keyword: false
avoid_usage_of_logical_operators: false
psr2_class_declaration: false
no_underscore_prefix_in_properties: false
no_underscore_prefix_in_methods: false
blank_line_after_namespace_declaration: false
single_namespace_per_use: false
psr2_switch_declaration: false
psr2_control_structure_declaration: false
avoid_superglobals: false
security_vulnerabilities: false
no_exit: false
coding_style:
php:
indentation:
general:
use_tabs: true
spaces:
around_operators:
negation: true