before_commands: - 'composer install --no-dev' tools: php_mess_detector: filter: excluded_paths: [vendor, examples] config: code_size_rules: { cyclomatic_complexity: true, npath_complexity: true, excessive_parameter_list: true, excessive_class_complexity: true } design_rules: { number_of_class_children: true, depth_of_inheritance: true, coupling_between_objects: true } unused_code_rules: { unused_local_variable: true, unused_private_method: true, unused_formal_parameter: true } naming_rules: { boolean_method_name: true } controversial_rules: { camel_case_class_name: true, camel_case_property_name: true, camel_case_method_name: true, camel_case_parameter_name: true, camel_case_variable_name: true } php_analyzer: filter: excluded_paths: [vendor, examples] config: parameter_reference_check: { enabled: true } checkstyle: { enabled: false, no_trailing_whitespace: true, naming: { enabled: true, 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)' } } unreachable_code: { enabled: false } check_access_control: { enabled: true } typo_checks: { enabled: true } check_variables: { enabled: true } check_calls: { enabled: true, too_many_arguments: true, missing_argument: true, argument_type_checks: lenient } suspicious_code: { enabled: true, overriding_parameter: true, overriding_closure_use: true, parameter_closure_use_conflict: true, parameter_multiple_times: true, non_existent_class_in_instanceof_check: true, non_existent_class_in_catch_clause: true, assignment_of_null_return: true, non_commented_switch_fallthrough: true, non_commented_empty_catch_block: true, overriding_private_members: true, use_statement_alias_conflict: true, precedence_in_condition_assignment: true } dead_assignments: { enabled: true } verify_php_doc_comments: { enabled: true, suggest_more_specific_types: true, parameters: false, return: false, ask_for_return_if_not_inferrable: false, ask_for_param_type_annotation: false } loops_must_use_braces: { enabled: true } check_usage_context: { enabled: true, foreach: { value_as_reference: true, traversable: true } } simplify_boolean_return: { enabled: true } phpunit_checks: { enabled: true } reflection_checks: { enabled: true } precedence_checks: { enabled: true, assignment_in_condition: true, comparison_of_bit_result: true } basic_semantic_checks: { enabled: false } unused_code: { enabled: true } deprecation_checks: { enabled: true } useless_function_calls: { enabled: true } metrics_lack_of_cohesion_methods: { enabled: true } metrics_coupling: { enabled: true, stable_code: { namespace_prefixes: { }, classes: { } } } doctrine_parameter_binding: { enabled: false } doctrine_entity_manager_injection: { enabled: false } symfony_request_injection: { enabled: false } doc_comment_fixes: { enabled: false } reflection_fixes: { enabled: true } use_statement_fixes: { enabled: true, remove_unused: true, preserve_multiple: false, preserve_blanklines: false, order_alphabetically: false } php_code_sniffer: filter: excluded_paths: [vendor, examples] config: tab_width: '4' sniffs: { psr1: { classes: { class_declaration_sniff: true }, files: { side_effects_sniff: false } }, generic: { classes: { duplicate_class_name_sniff: true }, php: { disallow_short_open_tag_sniff: true, no_silenced_errors_sniff: true, lower_case_constant_sniff: true, lower_case_keyword_sniff: true } } } php_cpd: excluded_dirs: - examples - tests - vendor php_loc: excluded_dirs: - examples - tests - vendor php_pdepend: filter: excluded_paths: [vendor, examples] php_hhvm: filter: excluded_paths: [vendor, examples] config: bad_php_include_file: true php_include_file_not_found: true unknown_class: true unknown_base_class: true unknown_function: true use_evaluation: true use_undeclared_global_variable: true unknown_object_method: true php_sim: filter: excluded_paths: [vendor, examples] checks: php: verify_property_names: true too_many_arguments: true unreachable_code: true unused_methods: true unused_parameters: true unused_properties: true unused_variables: true uppercase_basic_constants: true uppercase_constants: true use_self_instead_of_fqcn: true use_statement_alias_conflict: true useless_calls: true variable_existence: true verify_access_scope_valid: true verify_argument_usable_as_reference: true avoid_closing_tag: true avoid_duplicate_types: true avoid_length_functions_in_loops: true avoid_multiple_statements_on_same_line: true avoid_perl_style_comments: true avoid_space_indentation: true avoid_superglobals: true avoid_usage_of_logical_operators: true avoid_unnecessary_concatenation: true avoid_useless_overridden_methods: true blank_line_after_namespace_declaration: true no_unnecessary_if: true fix_use_statements: remove_unused: true preserve_multiple: true preserve_blanklines: true order_alphabetically: true code_rating: true duplication: 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_conflicting_incrementers: true assignment_of_null_return: true no_empty_statements: true no_unnecessary_final_modifier: true no_eval: true no_goto: true overriding_private_members: true non_commented_empty_catch_block: true fix_doc_comments: true parameter_doc_comments: true return_doc_comments: true param_doc_comment_if_not_inferrable: true return_doc_comment_if_not_inferrable: true switch_fallthrough_commented: true more_specific_types_in_doc_comments: true phpunit_assertions: true no_unnecessary_function_call_in_for_loop: true remove_trailing_whitespace: true remove_php_closing_tag: true remove_extra_empty_lines: true php5_style_constructor: true fix_linefeed: true fix_php_opening_tag: true no_exit: true fix_line_ending: true no_global_keyword: true no_mixed_inline_html: true no_short_open_tag: true require_php_tag_first: true missing_arguments: true method_calls_on_non_object: true instanceof_class_exists: true foreach_usable_as_reference: true foreach_traversable: true catch_class_exists: true argument_type_checks: true