- 
 
- 
  Notifications
 You must be signed in to change notification settings 
- Fork 89
Description
Sniffs in PHP_CodeSniffer should preferably be accompanied by documentation. There are currently still a number of sniffs which don't have documentation.
Sniff documentation is provided via XML files in the standard's Docs directory and is available to end-users via the command-line and/or can be compiled into an HTML or Markdown file.
To see an example of some of some available documentation, run:
phpcs --standard=PSR12 --generator=Text
Getting started
The CONTRIBUTING doc contains information on writing sniff documentation and guidelines which should be followed.
Action list
Blocked
-  PSR12.Files.DeclareStatement(There is a first draft available created by @dingo-d, which can be iterated on [Documentation] PSR12 - Declare Statement #187 )
 Note: this one is blocked until the sniff rewrite has been finished & merged.
To Do
-  Generic.VersionControl.GitMergeConflict
-  PSR12.Classes.AnonClassDeclaration(There is a first draft available created by @dingo-d, which can be iterated on [Documentation] PSR12 - Anonymous Class Declaration #167 )
-  PSR12.Files.FileHeader(There is a first draft available created by @dingo-d, which can be iterated on [Documentation] PSR12 - File Header #231 )
-  PSR12.Traits.UseDeclaration(There is a first draft available created by @dingo-d, which can be iterated on [Documentation] PSR12 - Use Declaration #239 )
-  Squiz.Commenting.ClassComment
-  Squiz.Commenting.ClosingDeclarationComment
-  Squiz.Commenting.EmptyCatchComment
-  Squiz.Commenting.FileComment
-  Squiz.Commenting.FunctionComment
-  Squiz.Commenting.InlineComment
-  Squiz.Commenting.LongConditionClosingComment
-  Squiz.Commenting.PostStatementComment
-  Squiz.Commenting.VariableComment
-  Squiz.ControlStructures.ControlSignature
-  Squiz.ControlStructures.ElseIfDeclaration
-  Squiz.ControlStructures.InlineIfDeclaration
-  Squiz.ControlStructures.SwitchDeclaration
-  Squiz.Files.FileExtension
-  Squiz.Formatting.OperatorBracket
-  Squiz.Functions.FunctionDeclarationArgumentSpacing
-  Squiz.Functions.FunctionDuplicateArgument
-  Squiz.Functions.FunctionDeclaration
-  Squiz.Functions.GlobalFunction
-  Squiz.Functions.MultiLineFunctionDeclaration
-  Squiz.NamingConventions.ValidFunctionName
-  Squiz.NamingConventions.ValidVariableName
-  Squiz.Objects.ObjectInstantiation
-  Squiz.Operators.ComparisonOperatorUsage
-  Squiz.Operators.IncrementDecrementUsage
-  Squiz.Operators.ValidLogicalOperators
-  Squiz.PHP.CommentedOutCode
-  Squiz.PHP.DisallowBooleanStatement
-  Squiz.PHP.DisallowComparisonAssignment
-  Squiz.PHP.DisallowInlineIf
-  Squiz.PHP.DisallowMultipleAssignments
-  Squiz.PHP.DisallowSizeFunctionsInLoops
-  Squiz.PHP.DiscouragedFunctions
-  Squiz.PHP.EmbeddedPhp
-  Squiz.PHP.Eval
-  Squiz.PHP.GlobalKeyword
-  Squiz.PHP.InnerFunctions
-  Squiz.PHP.LowercasePHPFunctions
-  Squiz.PHP.NonExecutableCode
-  Squiz.Scope.MemberVarScope
-  Squiz.Scope.MethodScope
-  Squiz.Strings.ConcatenationSpacing
-  Squiz.Strings.DoubleQuoteUsage
Note: a number of sniffs will be removed in v 4.0. Those have been deliberately excluded from the above action list.
Claimed/Work in Progress
-  Squiz.Classes.ClassDeclaration- @braindawg [Docs] Add XML doc for Squiz.Classes.ClassDeclaration sniff #844
-  Squiz.WhiteSpace.ControlStructureSpacing- @jaymcp
-  Squiz.WhiteSpace.FunctionSpacing- @jaymcp [Documentation] Squiz: Function Spacing #451
-  Squiz.WhiteSpace.LogicalOperatorSpacing- @jaymcp
-  Squiz.WhiteSpace.OperatorSpacing- @jaymcp
Done
-  Generic.Arrays.ArrayIndent- @rodrigoprimo Generic/ArrayIndent: add XML documentation #432
-  Generic.CodeAnalysis.EmptyPHPStatement- @rodrigoprimo Generic/EmptyPHPStatement: add XML documentation #166
-  Generic.Commenting.DocComment- @rodrigoprimo Generic/DocComment: add XML documentation #247
-  Generic.Formatting.SpaceBeforeCast- @rodrigoprimo Add documentation for the SpaceBeforeCast sniff #159
-  Generic.PHP.RequireStrictTypes- @rodrigoprimo Generic/RequireStrictTypes: add XML documentation #236
-  Generic.PHP.Syntax- @rodrigoprimo Generic/PHP/Syntax: add XML documentation #175
-  Generic.WhiteSpace.IncrementDecrementSpacing- @rodrigoprimo Generic/IncrementDecrementSpacing: add XML documentation #287
-  Generic.WhiteSpace.LanguageConstructSpacing- @rodrigoprimo Generic/LanguageConstructSpacing: add XML documentation #177
-  PSR12.Classes.ClosingBrace- @dingo-d [Documentation] PSR12 - Closing Brace #170
-  PSR12.Classes.OpeningBraceSpace- @dingo-d [Documentation] PSR12 - Opening Brace Space #171
-  PSR12.ControlStructures.BooleanOperatorPlacement- @dingo-d [Documentation] PSR12 - Boolean Operator Placement #181
-  PSR12.ControlStructures.ControlStructureSpacing- @dingo-d [Documentation] PSR12 - Control Structure Spacing #182
-  PSR12.Files.ImportStatement- @dingo-d [Documentation] PSR12 - Import Statement #232
-  PSR12.Files.OpenTag- @dingo-d [Documentation] PSR12 - Open Tag #233
-  PSR12.Functions.ReturnTypeDeclaration- @dingo-d [Documentation] PSR12 - Return Type Declaration #237
-  PSR12.Properties.ConstantVisibility- @dingo-d [Documentation] PSR12 - Constant Visiblity #238
-  Squiz.Commenting.BlockComment- @costdev [Docs] Add XML doc for Squiz.Commenting.BlockComment sniff #848
-  Squiz.Classes.ClassFileName- @braindawg [Docs] Add XML doc for Squiz.Classes.ClassFileName sniff #843
-  Squiz.Classes.ValidClassName- @braindawg [Docs] Add XML doc for Squiz.Classes.ValidClassName sniff #842
-  Squiz.PHP.Heredoc- @jrfnl Squiz/Heredoc: add XML doc #634
-  Squiz.WhiteSpace.FunctionClosingBraceSpace- @przemekhernik [Documentation] Squiz.WhiteSpace.FunctionClosingBraceSpace #408
-  Squiz.WhiteSpace.MemberVarSpacing- @jaymcp [Documentation] Squiz: Member Var Spacing #373
-  Squiz.WhiteSpace.ScopeClosingBrace- @jaymcp [Documentation] Squiz: Scope Closing Brace #353
-  Squiz.WhiteSpace.SuperfluousWhitespace- @jaymcp [Documentation] Squiz: Superfluous Whitespace #352
Want to contribute ?
Leave a comment below to claim a sniff you'll be working on.
PRs related to this task should preferably only contain the docs for one sniff each.