build: environment: timezone: UTC variables: DATABASE_URL: pgsql://scrutinizer:scrutinizer@localhost:5435/scrutinizer APP_ENV: test SYMFONY_ENV: test SYMFONY_PHPUNIT_VERSION: 7.5 mysql: false redis: false postgresql: true php: version: 7.3 nodes: analysis: tests: override: - SYMFONY_PHPUNIT_VERSION=7.5 bin/phpunit filter: paths: - src/* excluded_paths: - bin/* - build/* - docker/* - DoctrineMigrations/* - heroku/* - tests/* - var/* - vendor/* checks: php: uppercase_constants: true return_doc_comments: true avoid_todo_comments: true classes_in_camel_caps: true newline_at_end_of_file: true no_goto: true parameter_doc_comments: true return_doc_comment_if_not_inferrable: true properties_in_camelcaps: true prefer_while_loop_over_for_loop: true phpunit_assertions: true parameters_in_camelcaps: true param_doc_comment_if_not_inferrable: true overriding_parameter: true optional_parameters_at_the_end: true no_short_variable_names: minimum: '1' no_short_method_names: minimum: '3' no_long_variable_names: maximum: '36' more_specific_types_in_doc_comments: true line_length: max_length: '120' function_in_camel_caps: true encourage_single_quotes: true encourage_postdec_operator: true check_method_contracts: verify_interface_like_constraints: true verify_documented_constraints: true verify_parent_constraints: true avoid_perl_style_comments: true avoid_multiple_statements_on_same_line: true avoid_fixme_comments: true custom_coding_standard: ruleset_path: phpcs.xml naming_conventions: local_variable: '^[a-z][a-zA-Z0-9]*$' abstract_class_name: ^Abstract|Factory$ utility_class_name: '^[A-Z][a-zA-Z0-9]*$' 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)' code_rating: true duplication: true coding_style: php: indentation: general: size: 1 spaces: around_operators: concatenation: true build_failure_conditions: - 'elements.rating(<= C).new.exists' # No new classes/methods with a rating of C or worse allowed - 'issues.severity(>= MAJOR).new.exists' # New issues of major or higher severity - 'project.metric_change("scrutinizer.test_coverage", < -0.01)' # Code Coverage decreased from previous inspection - 'patches.label("Unused Use Statements").new.exists' # No new unused imports patches allowed - 'project.metric("scrutinizer.test_coverage", < 0.80)' # Code Coverage drops below 60% tools: external_code_coverage: timeout: 600 php_sim: true php_mess_detector: true php_cs_fixer: true php_analyzer: true php_code_sniffer: true sensiolabs_security_checker: true php_code_coverage: true php_cpd: enabled: false excluded_dirs: [vendor, var, tests, build] php_loc: enabled: true excluded_dirs: [vendor, var] php_pdepend: enabled: true excluded_dirs: [vendor, var, tests, build]
checks: php: true