From e38dd23ee83e6fc6b4c5abfd07c894728feafc60 Mon Sep 17 00:00:00 2001 From: bubba Date: Mon, 16 Jan 2023 17:33:54 -0500 Subject: [PATCH 1/5] Initializing Resolve_Issue_#32 for empty Pull Request From 199cd11b091d15e0e02ee26785c96f47dc9ed0c5 Mon Sep 17 00:00:00 2001 From: bubba Date: Mon, 16 Jan 2023 17:44:12 -0500 Subject: [PATCH 2/5] Config: Updated Name --- config/fixer.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/fixer.php b/config/fixer.php index f04e28b..6360eaa 100644 --- a/config/fixer.php +++ b/config/fixer.php @@ -2,7 +2,7 @@ return [ /** Will show up as the configuration name when using this rules configurations. */ - 'config_name' => 'Laravel Fixer', + 'config_name' => 'Laravel CS Fixer 3.0', /** By default, we will ignore any and all dot files. */ 'ignore_dot_files' => true, From 5cf8bc7c14ce7e59248cc943781d32ec6691eeb3 Mon Sep 17 00:00:00 2001 From: bubba Date: Mon, 16 Jan 2023 17:54:52 -0500 Subject: [PATCH 3/5] Provider: Typo --- src/FixerServiceProvider.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/FixerServiceProvider.php b/src/FixerServiceProvider.php index b622a16..3dcd611 100644 --- a/src/FixerServiceProvider.php +++ b/src/FixerServiceProvider.php @@ -36,8 +36,8 @@ public function register() /** * Add any package commands if we are running in the console. - * - * @return void + * + * @return void */ protected function addCommands() { @@ -50,8 +50,8 @@ protected function addCommands() /** * Handles configuation for Luman or Laravel - * - * @return void + * + * @return void */ protected function config() { @@ -63,10 +63,10 @@ protected function config() } /** - * Handles publishing the configuation class for Luman or Laravel - * - * @return void - * @throws BindingResolutionException + * Handles publishing the configuration class for Luman or Laravel + * + * @return void + * @throws BindingResolutionException */ protected function publish() { From 7c0c776a3164796ab568a51aaaf37e86770e7d95 Mon Sep 17 00:00:00 2001 From: bubba Date: Mon, 16 Jan 2023 18:16:02 -0500 Subject: [PATCH 4/5] Config: Reset all rules with the latest names. --- config/fixer.php | 207 ++++++++++++++++++++++------------------------- 1 file changed, 97 insertions(+), 110 deletions(-) diff --git a/config/fixer.php b/config/fixer.php index 6360eaa..6f62eaf 100644 --- a/config/fixer.php +++ b/config/fixer.php @@ -36,155 +36,125 @@ * Find them all at https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/v3.0.0/doc/rules/index.rst */ 'rules' => [ - /** PHP arrays should be declared using the configured syntax. */ + 'array_indentation' => true, 'array_syntax' => ['syntax' => 'short'], - - /** Binary operators should be surrounded by space as configured. */ 'binary_operator_spaces' => [ 'default' => 'single_space', - 'operators' => ['=>' => null] ], - - /** There MUST be one blank line after the namespace declaration. */ 'blank_line_after_namespace' => true, - - /** Ensure there is no code on the same line as the PHP open tag and it is followed by a blank line. */ 'blank_line_after_opening_tag' => true, - - /** An empty line feed must precede any configured statement. */ 'blank_line_before_statement' => [ - 'statements' => ['return'] + 'statements' => [ + 'continue', + 'return', + ], + ], + 'braces' => [ + 'allow_single_line_anonymous_class_with_empty_body' => true, + 'allow_single_line_closure' => true, + 'position_after_control_structures' => 'same', + 'position_after_functions_and_oop_constructs' => 'next', + 'position_after_anonymous_constructs' => 'next', + ], + 'curly_braces_position' => [ + 'control_structures_opening_brace' => 'same_line', + 'functions_opening_brace' => 'next_line_unless_newline_at_signature_end', + 'anonymous_functions_opening_brace' => 'same_line', + 'classes_opening_brace' => 'next_line_unless_newline_at_signature_end', + 'anonymous_classes_opening_brace' => 'next_line_unless_newline_at_signature_end', + 'allow_single_line_empty_anonymous_classes' => false, + 'allow_single_line_anonymous_functions' => false, ], - - /** The body of each structure MUST be enclosed by braces. Braces should be properly placed. Body of braces should be properly indented. */ - 'braces' => true, - - /** A single space or none should be between cast and variable. */ 'cast_spaces' => true, - - /** Class, trait and interface elements must be separated with one or none blank line. */ 'class_attributes_separation' => [ - 'elements' => ['method' => 'one'], + 'elements' => [ + 'const' => 'one', + 'method' => 'one', + 'property' => 'one', + 'trait_import' => 'none', + ], ], - - /** Whitespace around the keywords of a class, trait or interfaces definition should be one space. */ - 'class_definition' => true, - - /** Concatenation should be spaced according configuration. */ + 'class_definition' => [ + 'multi_line_extends_each_single_line' => true, + 'single_item_single_line' => true, + 'single_line' => true, + ], + 'clean_namespace' => true, + 'compact_nullable_typehint' => true, 'concat_space' => [ - 'spacing' => 'none' + 'spacing' => 'none', ], - - /** Equal sign in declare statement should be surrounded by spaces or not following configuration. */ + 'constant_case' => ['case' => 'lower'], 'declare_equal_normalize' => true, - - /** The keyword elseif should be used instead of else if so that all control keywords look like single words. */ 'elseif' => true, - - /** PHP code MUST use only UTF-8 without BOM (remove BOM). */ 'encoding' => true, - - /** PHP code must use the long true, - - /** Transforms imported FQCN parameters and return types in function arguments to short version. */ 'fully_qualified_strict_types' => true, - - /** Spaces should be properly placed in a function declaration. */ 'function_declaration' => true, - - /** nsure single space between function's argument and its typehint. */ 'function_typehint_space' => true, - - /** Convert heredoc to nowdoc where possible. */ + 'general_phpdoc_tag_rename' => true, 'heredoc_to_nowdoc' => true, - - /** Include/Require and file path should be divided with a single space. File path should not be placed under brackets. */ 'include' => true, - - /** Pre- or post-increment and decrement operators should be used if possible. */ 'increment_style' => ['style' => 'post'], - - /** Code MUST use configured indentation type. */ 'indentation_type' => true, - - /** Ensure there is no code on the same line as the PHP open tag. */ + 'integer_literal_case' => true, + 'lambda_not_used_import' => true, 'linebreak_after_opening_tag' => true, - - /** All PHP files must use same line ending. */ 'line_ending' => true, - - /** Cast should be written in lower case. */ + 'list_syntax' => true, 'lowercase_cast' => true, - - /** The PHP constants true, false, and null MUST be written using the correct casing. */ - 'constant_case' => true, - - /** PHP keywords MUST be in lower case. */ 'lowercase_keywords' => true, - - /** Class static references self, static and parent MUST be in lower case. */ 'lowercase_static_reference' => true, - - /** Magic method definitions and calls must be using the correct casing. */ 'magic_method_casing' => true, - - /** Magic constants should be referred to using the correct casing */ 'magic_constant_casing' => true, - - /** - * In method arguments and method call, there MUST NOT be a space before each comma and - * there MUST be one space after each comma. Argument lists MAY be split across multiple - * lines, where each subsequent line is indented once. When doing so, the first item in the - * list MUST be on the next line, and there MUST be only one argument per line. - */ - 'method_argument_space' => true, - - /** Function defined by PHP should be called using the correct casing. */ + 'method_argument_space' => [ + 'on_multiline' => 'ignore', + ], + 'multiline_whitespace_before_semicolons' => [ + 'strategy' => 'no_multi_line', + ], 'native_function_casing' => true, - - /** (risky) Master functions shall be used instead of aliases. */ + 'native_function_type_declaration_casing' => true, 'no_alias_functions' => true, - - /** Removes extra blank lines and/or blank lines following configuration. */ + 'no_alias_language_construct_call' => true, + 'no_alternative_syntax' => true, + 'no_binary_string' => true, + 'no_blank_lines_after_class_opening' => true, + 'no_blank_lines_after_phpdoc' => true, + 'no_closing_tag' => true, + 'no_empty_phpdoc' => true, + 'no_empty_statement' => true, 'no_extra_blank_lines' => [ 'tokens' => [ 'extra', 'throw', 'use', - 'use_trait', - ] + ], ], - /** There should be no empty lines after class opening brace. */ - 'no_blank_lines_after_class_opening' => true, - 'no_blank_lines_after_phpdoc' => true, - 'no_closing_tag' => true, - 'no_empty_phpdoc' => true, - 'no_empty_statement' => true, 'no_leading_import_slash' => true, 'no_leading_namespace_whitespace' => true, 'no_mixed_echo_print' => [ - 'use' => 'echo' + 'use' => 'echo', ], 'no_multiline_whitespace_around_double_arrow' => true, - 'multiline_whitespace_before_semicolons' => [ - 'strategy' => 'no_multi_line' - ], 'no_short_bool_cast' => true, 'no_singleline_whitespace_before_semicolons' => true, 'no_spaces_after_function_name' => true, - 'no_spaces_around_offset' => true, + 'no_space_around_double_colon' => true, + 'no_spaces_around_offset' => [ + 'positions' => ['inside', 'outside'], + ], 'no_spaces_inside_parenthesis' => true, - 'no_trailing_comma_in_list_call' => true, - 'no_trailing_comma_in_singleline_array' => true, + 'no_trailing_comma_in_singleline' => true, 'no_trailing_whitespace' => true, 'no_trailing_whitespace_in_comment' => true, - 'no_unneeded_control_parentheses' => true, + 'no_unneeded_control_parentheses' => [ + 'statements' => ['break', 'clone', 'continue', 'echo_print', 'return', 'switch_case', 'yield'], + ], + 'no_unneeded_curly_braces' => true, + 'no_unset_cast' => true, 'no_unused_imports' => true, - - /* (risky) In function arguments there must not be arguments with default values before non-default ones. */ 'no_unreachable_default_argument_value' => true, - 'no_useless_return' => true, 'no_whitespace_before_comma_in_array' => true, 'no_whitespace_in_blank_line' => true, @@ -192,46 +162,63 @@ 'not_operator_with_successor_space' => true, 'object_operator_without_whitespace' => true, 'ordered_imports' => ['sort_algorithm' => 'alpha'], + 'psr_autoloading' => false, 'phpdoc_indent' => true, 'phpdoc_inline_tag_normalizer' => true, 'phpdoc_no_access' => true, 'phpdoc_no_package' => true, 'phpdoc_no_useless_inheritdoc' => true, + 'phpdoc_order' => [ + 'order' => ['param', 'return', 'throws'], + ], 'phpdoc_scalar' => true, + 'phpdoc_separation' => [ + 'groups' => [ + ['deprecated', 'link', 'see', 'since'], + ['author', 'copyright', 'license'], + ['category', 'package', 'subpackage'], + ['property', 'property-read', 'property-write'], + ['param', 'return'], + ], + ], 'phpdoc_single_line_var_spacing' => true, - 'phpdoc_summary' => true, - 'phpdoc_to_comment' => true, + 'phpdoc_summary' => false, + 'phpdoc_to_comment' => false, + 'phpdoc_tag_type' => [ + 'tags' => [ + 'inheritdoc' => 'inline', + ], + ], 'phpdoc_trim' => true, 'phpdoc_types' => true, 'phpdoc_var_without_name' => true, - - /* (risky) Classes must be in a path that matches their namespace, be at least one namespace deep and the class name should match the file name. */ - 'psr_autoloading' => true, - - /* (risky) Inside class or interface element self should be preferred to the class name itself. */ - 'self_accessor' => true, - + 'return_type_declaration' => ['space_before' => 'none'], + 'self_accessor' => false, 'short_scalar_cast' => true, - 'simplified_null_return' => false, // disabled by Shift + 'simplified_null_return' => false, 'single_blank_line_at_eof' => true, 'single_blank_line_before_namespace' => true, - 'single_class_element_per_statement' => true, + 'single_class_element_per_statement' => [ + 'elements' => ['const', 'property'], + ], 'single_import_per_statement' => true, 'single_line_after_imports' => true, 'single_line_comment_style' => [ - 'comment_types' => ['hash'] + 'comment_types' => ['hash'], ], 'single_quote' => true, 'space_after_semicolon' => true, 'standardize_not_equals' => true, + 'statement_indentation' => false, 'switch_case_semicolon_to_colon' => true, 'switch_case_space' => true, 'ternary_operator_spaces' => true, 'trailing_comma_in_multiline' => ['elements' => ['arrays']], 'trim_array_spaces' => true, + 'types_spaces' => true, 'unary_operator_spaces' => true, 'visibility_required' => [ - 'elements' => ['method', 'property'] + 'elements' => ['method', 'property'], ], 'whitespace_after_comma_in_array' => true, ], From ca9e5be4cc308c13a5d18b40cedf86d7c2f4fdbe Mon Sep 17 00:00:00 2001 From: bubba Date: Mon, 16 Jan 2023 18:38:51 -0500 Subject: [PATCH 5/5] Config: Remove extraneous forward slashes --- config/fixer.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/config/fixer.php b/config/fixer.php index 6f62eaf..b46f984 100644 --- a/config/fixer.php +++ b/config/fixer.php @@ -12,13 +12,12 @@ /** The list of directories you want to fix. These are the default laravel directories. */ 'find_directories' => [ - base_path('/app'), - base_path('/config'), + base_path('app'), + base_path('config'), database_path(), resource_path(), - base_path('/routes'), - base_path('/tests') - + base_path('routes'), + base_path('tests') ], /** We will fix all files in those directories that match a pattern in this list. */