Repository Config
build:
environment:
php:
version: 8.0.0
nodes:
analysis:
tests:
override:
- php-scrutinizer-run
coverage:
tests:
override:
- command: vendor/bin/phpunit --configuration ./configuration/phpunit.xml --testsuite All
coverage:
file: documentation/codecoverage/coverage-clover.xml
format: clover
filter:
excluded_paths:
- 'vendor/*'
- 'tests/*'
checks:
php:
use_statement_alias_conflict: true
unused_variables: true
unused_parameters: false
unreachable_code: true
too_many_arguments: true
security_vulnerabilities: true
return_in_constructor: true
return_doc_comment_if_not_inferrable: true
require_scope_for_methods: true
require_php_tag_first: true
phpunit_assertions: true
parse_doc_comments: true
param_doc_comment_if_not_inferrable: true
non_commented_empty_catch_block: true
no_trailing_whitespace: true
no_short_open_tag: true
no_non_implemented_abstract_methods: true
no_goto: true
no_exit: true
no_error_suppression: true
no_debug_code: true
missing_arguments: true
instanceof_class_exists: true
foreach_usable_as_reference: true
foreach_traversable: true
fix_use_statements:
remove_unused: true
preserve_multiple: true
preserve_blanklines: true
order_alphabetically: true
fix_line_ending: true
encourage_shallow_comparison: true
fix_doc_comments: true
deprecated_code_usage: true
deadlock_detection_in_loops: true
comparison_always_same_result: true
code_rating: true
check_method_contracts:
verify_interface_like_constraints: true
verify_documented_constraints: true
verify_parent_constraints: true
catch_class_exists: true
avoid_duplicate_types: true
argument_type_checks: true
simplify_boolean_return: true
properties_in_camelcaps: true
parameters_in_camelcaps: true
overriding_parameter: true
no_short_method_names:
minimum: '3'
naming_conventions:
local_variable: '^[a-z][a-zA-Z0-9]*$'
abstract_class_name: ^Abstract|Factory$
utility_class_name: 'Utils?$'
constant_name: '^[A-Z][A-Z0-9]*(?:_[A-Z0-9]+)*$'
property_name: '^[a-z][a-zA-Z0-9]*$'
method_name: '^(?:[a-z]|__)[a-zA-Z0-9]*$'
parameter_name: '^[a-z][a-zA-Z0-9]*$'
interface_name: '^[A-Z][a-zA-Z0-9]*Interface$'
type_name: '^[A-Z][a-zA-Z0-9]*$'
exception_name: '^[A-Z][a-zA-Z0-9]*Exception$'
isser_method_name: '^(?:is|has|should|may|supports)'