NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #3343 most downloaded on Packagist
A factory for custom rulesets for PHP CS Fixer.
Last release 1 months ago
22 Aug 2026
Ships fairly regularly
a new release about every 2 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
71 releases · first in 2020
One column per quarter.
Bump shivammathur/setup-php from 2.37.0 to 2.37.1 by @dependabot [bot] in #14
FixerProvider::builtin()property-read and property-write tagsstatic_private_method fixerFull Changelog: v3.28.5...v3.29.0
FixerProvider::builtin()property-read and property-write tagsstatic_private_method fixerFix listing of phpdoc_separation based on feedback
Update listing in phpdoc_separation
Bump actions/cache from 5.0.4 to 5.0.5 by @dependabot [bot] in #13
native_constant_invocationfinal_public_method_for_abstract_classFull Changelog: v3.28.2...v3.28.3
Fix deprecated fixer and option
no_whitespace_in_empty_array fixer/generate-changelog skillFull Changelog: v3.28.1...v3.28.2
Use null value for other option of phpdoc_line_span
null value for other option of phpdoc_line_spancreateStub() instead of createMock()single_quoteFull Changelog: v3.28.0...v3.28.1
Bump actions/checkout from 5 to 6
phpdoc_line_spanfix_lambda option in void_returnFull Changelog: v3.27.0...v3.28.0
Add preserve_existing_declaration option to declare_strict_types
preserve_existing_declaration option to declare_strict_typesFull Changelog: v3.26.4...v3.27.0
Add but disable phpdoc_tag_no_named_arguments
phpdoc_tag_no_named_argumentsmodifier_keywords fixer@const to phpdoc_no_alias_tagBump actions/checkout from 4 to 5
phpdoc_annotation_without_dotFull Changelog: v3.26.2...v3.26.3
- Bump to php-cs-fixer v3.84
Test using php-cs-fixer's highest PHP version supported
Add multiline_promoted_properties fixer
multiline_promoted_properties fixerstatic_private_method fixernew_expression_parentheses fixerAdd php_unit_data_provider_method_order fixer
php_unit_data_provider_method_order fixerEnable modernize_stripos option to modernize_strpos fixer
modernize_stripos option to modernize_strpos fixerRemove phpExecutable as setPhpExecutable() is now deprecated in upstream
types_map option to phpdoc_to_* fixersgeneral_attribute_remove fixerphpExecutable as setPhpExecutable() is now deprecated in upstream@phpstan-ignore to ignored tags in comment_to_phpdocNexus83 and Nexus84 rulesetsNexus82 depend on Nexus81's rulesubuntu-24.04 in actionsAdd new PHPStan errors to baseline
phpdoc_separation groupsAllow multiline in class definition
Add php_unit_assert_new_names fixer
php_unit_assert_new_names fixertemplate and template-covariant PHPDocsAdd more files to .gitattributes
FixerGenerator::mergeWith()Refactor AbstractCustomFixerTestCase
Enable import_symbols option on fully_qualified_strict_types
php_unit_attributesordered_attributesimport_symbols option on fully_qualified_strict_typesRemove deprecated option of nullable_type_declaration_for_default_null_value
nullable_type_declaration_for_default_null_valueUpdate options for no_superfluous_phpdoc_tags
no_superfluous_phpdoc_tagsphpdoc_array_typeAdd string_implicit_slashes fixer
string_implicit_slashes fixerphpdoc_list_type fixerEnable union_types option for phpdoc_to fixers
union_types option for phpdoc_to fixersnumeric_literal_separatormultiline_string_to_heredocheredoc_closing_markerspacing option and add more tags to phpdoc_alignBump minimum PHP version to PHP 8.1
- Bump to php-cs-fixer v3.35
- Bump to php-cs-fixer v3.34 - Bump to php-cs-fixer v3.30 - Remove Nexus74 ruleset - Fix tag name in release - Update release.yml
Bump actions/checkout from 3 to 4
long_to_shorthand_operatorAdd case_sensitive options to order fixers
ordered_interfacescase_sensitive options to order fixersAdd more groups to phpdoc_separation
Add spaces_inside_parentheses fixer
return_to_yield_from fixerspaces_inside_parentheses fixerAdd case to elements monitored by class_attributes_separation
class_attributes_separationAdd more checked tokens in no_extra_blank_lines
no_extra_blank_linesordered_class_elementsConfigure yield_from_array_to_yields
yield_from_array_to_yieldsphp_unit_data_provider_return_typeRemove parallel in phpstan.neon.dist
nullable_type_declaration fixertype_declaration_spaces fixerphp_unit_data_provider_name fixerRemove @ in exclude/include options
@ in exclude/include optionsfinal_internal_classordered_class_elementsblank_lines_before_namespaceRemove space after short closure fn to match PER 2.0
() in anonymous classfn to match PER 2.0single_line_empty_body fixerphpdoc_param_order fixerordered_types fixerFix required PHP version of Nexus81 ruleset
Configure skip_unlisted_annotations option on phpdoc_separation rule
skip_unlisted_annotations option on phpdoc_separation rulephp_unit_data_provider_static ruleAdd 'case_sensitive' option to 'general_phpdoc_annotation_remove'
Bump php-cs-fixer version to v3.12
Add new option to phpdoc_separation
phpdoc_separationno_trailing_comma_in_singlelinewhitespace_after_comma_in_arrayphpdoc_orderno_multiple_statements_per_line ruleDeprecate Nexus/space_after_comment_start
Nexus/space_after_comment_startBump php-cs-fixer version to v3.6
Add ignored tags to phpdoc_to_comment rule
phpdoc_to_comment ruleRemove deprecated "tokens: use_trait" option
no_alternative_syntax rulenone except for methodsFix missing string substitution when FixerGenerator::create() fails
FixerGenerator::create() failsFix case where comment is exactly //
//Enable all class_definition rules
class_definition rulesliaison/cs-config@internal annotation from classes in public APIAdd support for trait_import in class_attributes_separation
trait_import in class_attributes_separationForbid running PHPStan on PHP8.1 (for now)
phpunit.xml.dist structure.include/require from statements requiring blank line before.AbstractRulesetTestCase when configurable fixer is not yet defined by the ruleset.void_return fixer@final and @no-final onlyfinal_public_method_for_abstract_classphpdoc_to_param_type and phpdoc_to_return_type@test annotations from testsphp_unit_test_class_requires_covers. Let PHPUnit do the job instead.Forbid importing global functions and constants in addition to global classes
AbstractRulesetTestCasebinary_operator_spaces to single_space for all rulesetsphpstan/phpstan-strict-rulesChanged native_constant_invocation to fix only a subset of built in constants
native_constant_invocation to fix only a subset of built in constantsChanged native_constant_invocation to fix all built in constants
native_constant_invocation to fix all built in constantsnative_function_invocationphpdoc_line_span and phpdoc_tag_type rules@author tags in general_phpdoc_annotation_remove ruleone_if_phpdoc option for class_attributes_separationAdd test for checking missing built-in rules in ruleset
Allow overriding of AbstractRulesetTestCase::createRuleset()
AbstractRulesetTestCase::createRuleset()Fixed default cache file in Factory
3.x-devFactoryNexus74 ruleset to enable phpdoc_to_property_typeconst to none in Nexus80 rulesetUpdate friendsofphp/php-cs-fixer to v3.0.0 Constitution
friendsofphp/php-cs-fixer to v3.0.0 ConstitutionNexus80, targeting PHP 8.0+Tachycardia for profiling of slow testsYour coding agent can read these notes before it upgrades. Set up the MCP server →