Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Facile Coding Standard Laravel Package

facile-it/facile-coding-standard

PHP coding standard based on PHP-CS-Fixer by Facile.it. Installs via Composer with an interactive setup that generates a .php-cs-fixer.dist.php, auto-detects files from composer autoload (psr-0/psr-4/classmap), and adds cs-check/cs-fix scripts.

View on GitHub
Deep Wiki
Context7
1.5.0

The following rules or groups have been added to the default rule set:

  • multiline_promoted_properties
  • no_redundant_readonly_property
  • no_whitespace_in_empty_array
  • phpdoc_no_duplicate_types

The following rules or groups have been added to the risky rule set:

  • [@PER-CS3x0](https://github.com/PER-CS3x0):risky (in place of [@PER-CS2](https://github.com/PER-CS2).0:risky, which was also deprecated)
  • no_useless_printf

Additional changes:

  • Drop support to PHP 7.4 and 8.0 (#88)
  • Align rules to PER-CS 3.0 defaults (#88)
    • trailing_comma_in_multiline: applies trailing commas in all multi-line statements, not only arrays
    • single_class_element_per_statement: no changes
  • [internal] Upgrade to PHPUnit 10+ and Psalm 6 (#88)
  • [internal] Add Rector (#88)
1.4.0
  • Adopt PER-CS 3.0 (in place of 2.0 and PSR-12)
  • Bump minimum version of PHP-CS-Fixer to 3.88
  • Bump minimum version of symfony/console to 5.4
1.3.1
  • Fix deprecation of native_function_type_declaration_casing (#80)
1.3.0
  • Add PHP 8.4 support (#74)
  • Drop support to Composer 1.x (#77)
1.2.0
  • Add new numeric_literal_separator rule (#65)
  • Map new heredoc rules as "to be discussed" (heredoc_closing_marker, multiline_string_to_heredoc)
1.1.0
  • Add new risky class_keyword rule (#64) NB: the rule is experimental, and relies on runtime autoload to determine if a FCQN refers to an existing class
  • Test against PHP 8.3
1.0.1
  • Allow Symfony 7
  • Move long_to_shorthand_operator to RiskyRulesProvider (#62)
1.0.0
  • Bumping minimum PHP version required to 7.4
  • Bumping minimum PHP-CS-Fixer version required to 3.4
  • Dynamically replace deprecated rules depending on the PHP-CS-Fixer version in use

New rules

The following rules or groups have been added to the default rule set:

  • [@PER-CS2](https://github.com/PER-CS2).0 (with [@PSR12](https://github.com/PSR12) as fallback)
  • [@PER-CS2](https://github.com/PER-CS2).0:risky (with [@PSR12](https://github.com/PSR12):risky as fallback)
  • [@DoctrineAnnotation](https://github.com/DoctrineAnnotation)
  • array_push
  • assign_null_coalescing_to_coalesce_equal
  • attribute_empty_parentheses
  • backtick_to_shell_exec
  • class_reference_name_casing
  • combine_consecutive_issets
  • combine_consecutive_unsets
  • combine_nested_dirname
  • curly_braces_position
  • declare_parentheses
  • empty_loop_body
  • ereg_to_preg
  • explicit_string_variable
  • get_class_to_class_keyword
  • heredoc_to_nowdoc
  • heredoc_indentation
  • implode_call
  • integer_literal_case
  • lambda_not_used_import
  • linebreak_after_opening_tag
  • list_syntax
  • long_to_shorthand_operator
  • magic_constant_casing
  • magic_method_casing
  • modernize_strpos
  • native_function_type_declaration_casing
  • native_type_declaration_casing
  • no_alternative_syntax
  • no_superfluous_elseif
  • no_superfluous_phpdoc_tags
  • no_trailing_comma_in_singleline
  • no_trailing_comma_in_singleline_function_call
  • no_unneeded_import_alias
  • no_unneeded_braces
  • no_unset_cast
  • no_useless_concat_operator
  • no_useless_else
  • no_useless_sprintf
  • nullable_type_declaration
  • octal_notation
  • operator_linebreak
  • ordered_traits
  • phpdoc_inline_tag_normalizer
  • phpdoc_no_alias_tag
  • phpdoc_param_order
  • phpdoc_summary
  • phpdoc_tag_casing
  • phpdoc_tag_type
  • phpdoc_var_annotation_correct_order
  • php_unit_data_provider_static
  • php_unit_dedicate_assert_internal_type
  • php_unit_expectation
  • php_unit_fqcn_annotation
  • php_unit_mock_short_will_return
  • return_to_yield_from
  • phpdoc_trim_consecutive_blank_line_separation
  • semicolon_after_instruction
  • single_line_comment_spacing
  • single_line_empty_body
  • single_space_around_construct
  • single_trait_insert_per_statement
  • switch_continue_to_break
  • type_declaration_spaces
  • types_spaces
  • no_homoglyph_names
  • set_type_to_cast
  • ternary_to_elvis_operator

Changes to existing rules

  • phpdoc_align is now enabled with config left
  • ordered_imports is now falling back to PER-CS configuration, which is not the same as the default one

Removed rules

Multiple rules are removed (but still applied) since they're already covered in PER-CS or PSR-12 with the same configuration as before:

  • blank_line_after_namespace
  • blank_line_after_opening_tag
  • compact_nullable_type_declaration
  • declare_equal_normalize
  • lowercase_cast
  • new_with_parentheses
  • no_leading_import_slash
  • no_whitespace_in_blank_line
  • return_type_declaration
  • short_scalar_cast
  • ternary_operator_spaces
  • unary_operator_spaces
1.0.0-RC1
  • Bumping minimum PHP version required to 7.4
  • Bumping minimum PHP-CS-Fixer version required to 3.4
  • Dynamically replace deprecated rules depending on the PHP-CS-Fixer version in use

New rules

The following rules or groups have been added to the default rule set:

  • [@PER-CS2](https://github.com/PER-CS2).0 (with [@PSR12](https://github.com/PSR12) as fallback)
  • [@PER-CS2](https://github.com/PER-CS2).0:risky (with [@PSR12](https://github.com/PSR12):risky as fallback)
  • [@DoctrineAnnotation](https://github.com/DoctrineAnnotation)
  • array_push
  • assign_null_coalescing_to_coalesce_equal
  • attribute_empty_parentheses
  • backtick_to_shell_exec
  • class_reference_name_casing
  • combine_consecutive_issets
  • combine_consecutive_unsets
  • combine_nested_dirname
  • curly_braces_position
  • declare_parentheses
  • empty_loop_body
  • ereg_to_preg
  • explicit_string_variable
  • get_class_to_class_keyword
  • heredoc_to_nowdoc
  • heredoc_indentation
  • implode_call
  • integer_literal_case
  • lambda_not_used_import
  • linebreak_after_opening_tag
  • list_syntax
  • long_to_shorthand_operator
  • magic_constant_casing
  • magic_method_casing
  • modernize_strpos
  • native_function_type_declaration_casing
  • native_type_declaration_casing
  • no_alternative_syntax
  • no_superfluous_elseif
  • no_superfluous_phpdoc_tags
  • no_trailing_comma_in_singleline
  • no_trailing_comma_in_singleline_function_call
  • no_unneeded_import_alias
  • no_unneeded_braces
  • no_unset_cast
  • no_useless_concat_operator
  • no_useless_else
  • no_useless_sprintf
  • nullable_type_declaration
  • octal_notation
  • operator_linebreak
  • ordered_traits
  • phpdoc_inline_tag_normalizer
  • phpdoc_no_alias_tag
  • phpdoc_param_order
  • phpdoc_summary
  • phpdoc_tag_casing
  • phpdoc_tag_type
  • phpdoc_var_annotation_correct_order
  • php_unit_data_provider_static
  • php_unit_dedicate_assert_internal_type
  • php_unit_expectation
  • php_unit_fqcn_annotation
  • php_unit_mock_short_will_return
  • return_to_yield_from
  • phpdoc_trim_consecutive_blank_line_separation
  • semicolon_after_instruction
  • single_line_comment_spacing
  • single_line_empty_body
  • single_space_around_construct
  • single_trait_insert_per_statement
  • switch_continue_to_break
  • type_declaration_spaces
  • types_spaces
  • no_homoglyph_names
  • set_type_to_cast
  • ternary_to_elvis_operator

Changes to existing rules

  • phpdoc_align is now enabled with config left
  • ordered_imports is now falling back to PER-CS configuration, which is not the same as the default one

Removed rules

Multiple rules are removed (but still applied) since they're already covered in PER-CS or PSR-12 with the same configuration as before:

  • blank_line_after_namespace
  • blank_line_after_opening_tag
  • compact_nullable_type_declaration
  • declare_equal_normalize
  • lowercase_cast
  • new_with_parentheses
  • no_leading_import_slash
  • no_whitespace_in_blank_line
  • return_type_declaration
  • short_scalar_cast
  • ternary_operator_spaces
0.5.3
  • Disable "phpdoc_to_comment" option to avoid false positives with PHPStan @var helpers #46
0.5.2
  • Allow Symfony 6
0.5.1
  • Fix configuration generation
  • Check for --no-interactive flag during BC upgrades #37
0.5.0
  • Upgrade to PHP-CS-Fixer 3.0 #35 (all breaking changes are due to upstream, check the UPGRADE-v3.md document for a complete list)
0.4.1

Added

  • Added PHP 8 compatibility
0.4.0

Changed

  • Bumped minimum required PHP version to 7.2
  • Composer 2.0 compatibility
0.3.1

Changed

  • Create configuration without risky rules by default
  • Removed risky rules from default configuration
0.3.0

Added

  • Added new rules
  • Added risky rules

Changed

  • Bumped minimum required PHP version to 7.1
  • Bumped minimum php-cs-fixer to v2.13
  • Changed configuration
  • Plugin refactoring
0.2.0

Removed

  • Removed self_accessor (it became risky)
0.1.0

First implementation as composer plugin

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope