Use PSR-2 with exceptions in PHP CodeSniffer
php, phpcodesniffer
Solution
Found the problem. I'd gotten lost in what's included in the PSR2 ruleset and excluded the wrong things. Adding this solved it:
<exclude name="Squiz.Functions.MultiLineFunctionDeclaration.BraceOnSameLine"/>
Problem
I'm attempting to set up a ruleset for PHP CodeSniffer to enforce code style among a group of developers but I've run into some trouble. We'd like to adhere to PSR-2 except for regarding two things. We want class declarations to have the open brace on the same line and the same for functions. The first I've managed to fix but the error for open brace on the same line for functions just will not go away. I've traced it to the sniff Generic.Functions.OpeningFunctionBrace.BsdAllman and the error BraceOnSameLine but adding this exclude to my ruleset does nothing. My ruleset looks like this: ``` <?xml version="1.0"?> <ruleset name="OrgXYZ"> <description>The coding standard for Organization XYZ.</description> <rule ref="PSR2"> <exclude name="PSR2.Classes.ClassDeclaration.OpenBraceNewLine"/> <exclude name="Generic.Functions.OpeningFunctionBraceBsdAllman.BraceOnSameLine"/> </rule> </ruleset> ``` And the message I'm trying to remove from the report is this: ``` 15 | ERROR | Opening brace should be on a new line ``` This is my first attempt at a ruleset of my own and I'm really at a loss here. I've googled, searched and tried everything it seems.