# 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