diff --git a/static/_scrutinizer.yml.tmpl b/static/_scrutinizer.yml.tmpl index 37a268f..4ae6656 100644 --- a/static/_scrutinizer.yml.tmpl +++ b/static/_scrutinizer.yml.tmpl @@ -1,192 +1,223 @@ # language: php +build: + nodes: + analysis: + tests: + override: + - php-scrutinizer-run + - + command: phpcs-run + use_website_config: true before_commands: - - "composer install --no-dev --prefer-source" + - "composer install --no-dev --prefer-source" 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 - use_self_instead_of_fqcn: true - uppercase_constants: 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 - 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 - side_effects_or_types: true - security_vulnerabilities: true - scope_indentation: - spaces_per_level: '4' - return_doc_comments: true - return_doc_comment_if_not_inferrable: 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 - psr2_switch_declaration: true - psr2_control_structure_declaration: true - psr2_class_declaration: 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 - parameter_non_unique: true - parameter_doc_comments: true - param_doc_comment_if_not_inferrable: true - overriding_private_members: true - optional_parameters_at_the_end: true - one_class_per_file: true - no_unnecessary_if: true - no_unnecessary_function_call_in_for_loop: true - no_unnecessary_final_modifier: true - no_underscore_prefix_in_properties: true - no_underscore_prefix_in_methods: true - no_trait_type_hints: true - no_trailing_whitespace: true - no_space_inside_cast_operator: true - no_space_before_semicolon: 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: '40' - no_goto: true - no_global_keyword: true - no_exit: true - no_eval: true - no_empty_statements: true - no_else_if_statements: true - no_duplicate_arguments: true - no_debug_code: true - newline_at_end_of_file: 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 - lowercase_php_keywords: true - lowercase_basic_constants: true - line_length: - max_length: '120' - 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 - fix_doc_comments: true - ensure_lower_case_builtin_functions: true - encourage_single_quotes: true - encourage_shallow_comparison: true - encourage_postdec_operator: true - duplication: true - deprecated_code_usage: true - deadlock_detection_in_loops: true - code_rating: true - closure_use_not_conflicting: true - closure_use_modifiable: true - classes_in_camel_caps: true - catch_class_exists: true - blank_line_after_namespace_declaration: true - avoid_useless_overridden_methods: true - avoid_usage_of_logical_operators: true - avoid_unnecessary_concatenation: true - avoid_tab_indentation: true - avoid_superglobals: true - avoid_perl_style_comments: true - avoid_multiple_statements_on_same_line: true - avoid_length_functions_in_loops: true - avoid_fixme_comments: true - avoid_duplicate_types: true - avoid_corrupting_byteorder_marks: true - avoid_conflicting_incrementers: true - avoid_closing_tag: true - avoid_aliased_php_functions: true - assignment_of_null_return: true - argument_type_checks: true - align_assignments: true + 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 + use_self_instead_of_fqcn: true + uppercase_constants: 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 + 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 + side_effects_or_types: true + security_vulnerabilities: true + scope_indentation: + spaces_per_level: '4' + return_doc_comments: true + return_doc_comment_if_not_inferrable: 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 + psr2_switch_declaration: true + psr2_control_structure_declaration: true + psr2_class_declaration: 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 + parameter_non_unique: true + parameter_doc_comments: true + param_doc_comment_if_not_inferrable: true + overriding_private_members: true + optional_parameters_at_the_end: true + one_class_per_file: true + no_unnecessary_if: true + no_unnecessary_function_call_in_for_loop: true + no_unnecessary_final_modifier: true + no_underscore_prefix_in_properties: true + no_underscore_prefix_in_methods: true + no_trait_type_hints: true + no_trailing_whitespace: true + no_space_inside_cast_operator: true + no_space_before_semicolon: 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: '40' + no_goto: true + no_global_keyword: true + no_exit: true + no_eval: true + no_empty_statements: true + no_else_if_statements: true + no_duplicate_arguments: true + no_debug_code: true + newline_at_end_of_file: true + naming_conventions: + local_variable: '^[a-z][a-zA-Z0-9_]*$' + abstract_class_name: '^Abstract[a-zA-Z]*$' + 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 + lowercase_php_keywords: true + lowercase_basic_constants: true + line_length: + max_length: '120' + 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 + fix_doc_comments: true + ensure_lower_case_builtin_functions: true + encourage_single_quotes: true + encourage_shallow_comparison: true + encourage_postdec_operator: true + duplication: true + deprecated_code_usage: true + deadlock_detection_in_loops: true + code_rating: true + closure_use_not_conflicting: true + closure_use_modifiable: true + classes_in_camel_caps: true + catch_class_exists: true + blank_line_after_namespace_declaration: true + avoid_useless_overridden_methods: true + avoid_usage_of_logical_operators: true + avoid_unnecessary_concatenation: true + avoid_tab_indentation: true + avoid_superglobals: true + avoid_perl_style_comments: true + avoid_multiple_statements_on_same_line: true + avoid_length_functions_in_loops: true + avoid_fixme_comments: true + avoid_duplicate_types: true + avoid_corrupting_byteorder_marks: true + avoid_conflicting_incrementers: true + avoid_closing_tag: true + avoid_aliased_php_functions: true + assignment_of_null_return: true + argument_type_checks: true + align_assignments: true + remove_extra_empty_lines: true + properties_in_camelcaps: true + parameters_in_camelcaps: true + overriding_parameter: true + no_short_variable_names: + minimum: '3' + check_method_contracts: + verify_interface_like_constraints: true + verify_documented_constraints: true + verify_parent_constraints: true tools: - external_code_coverage: - timeout: 600 - php_sim: false - php_code_coverage: - enabled: true - php_code_sniffer: - enabled: true - config: - standard: PSR2 - filter: - paths: ["src/*", "tests/*"] - php_cs_fixer: - enabled: true - config: - level: all - filter: - paths: ["src/*", "tests/*"] - php_cpd: - enabled: true - excluded_dirs: ["docs", "tests", "vendor"] - php_loc: - enabled: true - excluded_dirs: ["docs", "tests", "vendor"] - php_mess_detector: - config: - code_size_rules: - cyclomatic_complexity: true - unused_code_rules: - unused_local_variable: true - unused_private_method: true - unused_formal_parameter: true - php_pdepend: - enabled: true - excluded_dirs: ["docs", "tests", "vendor"] - php_analyzer: - enabled: true - filter: - paths: ["src/*", "tests/*"] - sensiolabs_security_checker: true - php_hhvm: - enabled: false -filter: - excluded_paths: - - 'docs/*' + external_code_coverage: + timeout: 600 + php_sim: false + php_code_coverage: + enabled: true + php_code_sniffer: + enabled: true + config: + standard: PSR2 + filter: + paths: ["src/*", "tests/*"] + php_cs_fixer: + enabled: true + config: + level: all + filter: + paths: + - 'src/*' + - 'tests/*' + php_cpd: + enabled: true + excluded_dirs: + - docs + - tests + - vendor + php_loc: + enabled: true + excluded_dirs: + - docs + - tests + - vendor + php_mess_detector: + config: + code_size_rules: + cyclomatic_complexity: true + unused_code_rules: + unused_local_variable: true + unused_private_method: true + unused_formal_parameter: true + php_pdepend: + enabled: true + excluded_dirs: + - docs + - tests + - vendor + php_analyzer: + enabled: true + filter: + paths: + - 'src/*' - 'tests/*' + sensiolabs_security_checker: true + php_hhvm: + enabled: false +filter: + excluded_paths: + - 'docs/*' + - 'tests/*' diff --git a/static/phpstan.neon.dist.tmpl b/static/phpstan.neon.dist.tmpl deleted file mode 100644 index 2acaa55..0000000 --- a/static/phpstan.neon.dist.tmpl +++ /dev/null @@ -1,15 +0,0 @@ -includes: - - vendor/pepakriz/phpstan-exception-rules/extension.neon - - vendor/phpstan/phpstan-deprecation-rules/rules.neon - - vendor/phpstan/phpstan-strict-rules/rules.neon - - vendor/thecodingmachine/phpstan-strict-rules/phpstan-strict-rules.neon -parameters: - ignoreErrors: - - - message: '/Constant XDEBUG_FILTER_CODE_COVERAGE not found./' - path: %currentWorkingDirectory%/tests/phpunit-xdebug-coverage.php - - - message: '/Constant XDEBUG_PATH_WHITELIST not found./' - path: %currentWorkingDirectory%/tests/phpunit-xdebug-coverage.php - reportStaticMethodSignatures: true - tmpDir: %rootDir%/tmp diff --git a/templates/PHPUNIT-HEADER.tmpl b/templates/PHPUNIT-HEADER.tmpl index 554a3f7..802c37c 100644 --- a/templates/PHPUNIT-HEADER.tmpl +++ b/templates/PHPUNIT-HEADER.tmpl @@ -1,12 +1,14 @@ diff --git a/templates/README-BADGES.tmpl b/templates/README-BADGES.tmpl index 90d490d..c574ad7 100644 --- a/templates/README-BADGES.tmpl +++ b/templates/README-BADGES.tmpl @@ -12,8 +12,7 @@ [![Travis branch](https://img.shields.io/travis/simplepie/@@REPO@@/master.svg?style=for-the-badge&label=Travis%20CI)](https://travis-ci.org/simplepie/@@REPO@@) [![Coveralls](https://img.shields.io/coveralls/github/simplepie/@@REPO@@/master.svg?style=for-the-badge)](https://coveralls.io/github/simplepie/@@REPO@@) [![Code Quality](http://img.shields.io/scrutinizer/g/simplepie/@@REPO@@.svg?style=for-the-badge&label=Scrutinizer)](https://scrutinizer-ci.com/g/simplepie/@@REPO@@) -[![SensioLabs Insight](https://img.shields.io/sensiolabs/i/@@INSIGHT@@.svg?style=for-the-badge&label=SensioLabs%20Insight)](https://insight.sensiolabs.com/projects/@@INSIGHT@@) -[![Codacy](https://img.shields.io/codacy/grade/@@CODACY@@/master.svg?style=for-the-badge&label=Codacy)](https://www.codacy.com/app/simplepie/@@REPO@@) +[![Symfony Insight](https://img.shields.io/sensiolabs/i/@@INSIGHT@@.svg?style=for-the-badge&label=Symfony%20Insight)](https://insight.symfony.com/projects/@@INSIGHT@@) ### Social