YetiForceCompany/YetiForceCRM

View on GitHub
.scrutinizer.yml

Summary

Maintainability
Test Coverage
build:
  environment:
    mysql: false
    mongodb: false
    elasticsearch: false
    redis: false
    memcached: false
    neo4j: false
    rabbitmq: false
    postgresql: false
    php:
      version: 7.4

  tests:
    stop_on_failure: false
    before: []
    override:
      - 'php -v'
    after: []
  nodes:
    tests: []

filter:
  excluded_paths:
    - vendor/*
    - node_modules/*
    - public_html/vendor/*
    - public_html/src/node_modules/*
    - public_html/libraries/*
    - '*.min.js'
    - '*.min.*.js'
checks:
  php:
    verify_property_names: true
    verify_argument_usable_as_reference: true
    verify_access_scope_valid: true
    variable_existence: true
    useless_calls: true
    use_statement_alias_conflict: true
    unused_variables: true
    unused_properties: true
    unused_parameters: true
    unused_methods: true
    unreachable_code: true
    too_many_arguments: true
    symfony_request_injection: true
    switch_fallthrough_commented: true
    sql_injection_vulnerabilities: true
    simplify_boolean_return: true
    security_vulnerabilities: true
    return_in_constructor: true
    return_doc_comments: true
    return_doc_comment_if_not_inferrable: true
    require_scope_for_methods: true
    require_php_tag_first: true
    remove_extra_empty_lines: true
    property_assignments: true
    properties_in_camelcaps: true
    precedence_mistakes: true
    precedence_in_conditions: true
    phpunit_assertions: true
    parse_doc_comments: true
    parameters_in_camelcaps: true
    parameter_non_unique: true
    parameter_doc_comments: true
    param_doc_comment_if_not_inferrable: true
    overriding_private_members: true
    overriding_parameter: true
    non_commented_empty_catch_block: true
    no_trait_type_hints: true
    no_trailing_whitespace: true
    no_short_variable_names:
      minimum: '3'
    no_short_open_tag: true
    no_short_method_names:
      minimum: '3'
    no_property_on_interface: true
    no_non_implemented_abstract_methods: true
    no_long_variable_names:
      maximum: '20'
    no_goto: true
    no_exit: true
    no_eval: true
    no_error_suppression: true
    no_debug_code: true
    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)'
    more_specific_types_in_doc_comments: true
    missing_arguments: true
    method_calls_on_non_object: true
    instanceof_class_exists: true
    foreach_usable_as_reference: true
    foreach_traversable: true
    fix_use_statements:
      remove_unused: true
      preserve_multiple: false
      preserve_blanklines: false
      order_alphabetically: false
    fix_line_ending: true
    fix_doc_comments: true
    encourage_shallow_comparison: true
    duplication: true
    deprecated_code_usage: true
    deadlock_detection_in_loops: true
    comparison_always_same_result: true
    code_rating: true
    closure_use_not_conflicting: true
    closure_use_modifiable: true
    check_method_contracts:
      verify_interface_like_constraints: true
      verify_documented_constraints: true
      verify_parent_constraints: true
    catch_class_exists: true
    call_to_parent_method: true
    avoid_superglobals: true
    avoid_length_functions_in_loops: true
    avoid_entity_manager_injection: true
    avoid_duplicate_types: true
    avoid_closing_tag: true
    assignment_of_null_return: true
    argument_type_checks: true
  javascript:
    var_sometimes_initialized: true
    var_never_initialized: true
    valid_typeof: true
    use_isnan: true
    unsafe_undefined: true
    unsafe_mutable_variable_usage: true
    nsp_vulnerabilities: true
    no_with: true
    no_void: true
    no_var: true
    no_use_before_define: true
    no_unused_vars: true
    no_unused_function: true
    no_unused_expressions: true
    no_unused_const: true
    no_unused_assignment: true
    no_unreachable: true
    no_undef_init: true
    no_undef: true
    no_sparse_arrays: true
    no_shadow_builtins: true
    no_sequences: true
    no_return_assign: true
    no_redeclared_const: true
    no_redeclare: true
    no_process_exit: true
    no_path_concat: true
    no_param_assign: true
    no_new_wrappers: true
    no_new_require: true
    no_new_func: true
    no_negated_in_lhs: true
    no_native_reassign: true
    no_loop_var_assign: true
    no_label_var: true
    no_invalid_regexp: true
    no_inner_declarations: true
    no_implied_eval: true
    no_implicit_undefined_return: true
    no_func_assign: true
    no_extra_bind: true
    no_extend_native: true
    no_ex_assign: true
    no_eval: true
    no_empty_label: true
    no_empty_class: true
    no_empty: true
    no_else_return: true
    no_dupe_keys: true
    no_delete_var: true
    no_debugger: true
    no_constant_condition: true
    no_console: true
    no_comma_dangle: true
    no_caller: true
    no_bitwise: true
    no_array_constructor: true
    no_alias_builtins: true
    no_alert: true
    new_cap: true
    jsdoc_non_existent_params: true
    jsdoc_no_duplicate_params: true
    guard_for_in: true
    eqeqeq: true
    duplicate_code: true
    curly: true
    consistent_return: true
    code_rating: true
    check_unused_parameters: true
    check_unused_object_creation: true
    check_unused_member_calls: true
    check_unnecessary_return: true
    check_unnecessary_continue: true
    check_undeclared_vars: true
    check_try_statement: true
    check_too_many_arguments: true
    check_switch_unintended label: true
    check_switch_no_default: true
    check_switch_default_only: true
    check_switch_default_not_last: true
    check_switch_ambiguous_test: true
    check_loop_no_body: true
    check_for_loops_test: true

coding_style:
  php:
    indentation:
      general:
        use_tabs: true
    spaces:
      around_operators:
        concatenation: true

tools:
  sensiolabs_security_checker: true
  external_code_coverage: false