mayesto/csl

Check files

Maintainers

Details

github.com/mayesto/csl

Source

Issues

Installs: 21

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

Type:package

1.1.0 2018-08-19 13:04 UTC

This package is not auto-updated.

Last update: 2024-03-17 20:38:01 UTC


README

Codacy Badge

This pack was designed for more accurate checking of files

Install

composer global require mayesto/csl

ln -s ~/.composer/vendor/bin/csl /usr/bin

Usage

Check command

csl check ./src --yaml=./config.yml

RunOptions:
--format=value      Output format. Possible values: table, json
--yaml=filepath     Select config file in yaml format
-s|--short          Short file path on result
-vvv                Debug mode

Features

  • Full configurable stock of rules
  • Full configurable source of files. Options: Scanning dir, Git modified files

Rules

  • ClassAuthorPattern - Check class author with your regex
  • ClassAuthorRequire - Require minimum one class author
  • ClassMethodPhpDoc - Check if method has php doc
  • ClassMethodPhpDocEmptyLineBeforeReturn - Check if method's php doc has invalid empty line
  • ClassPhpDoc - Check if class has php doc
  • ClassPhpDocPropertyRequire - Check if class's php doc has a property
  • InternalFunctionNamespace - Find all call of native functions and check if they have fully namespace
  • MethodReturnTypeRequire - Find all methods which have not return type cast
  • ParserValidation - Basic parser validation
  • TooMuchEmptyLines - Scan file and report too much empty lines
  • EmptyLineOnEndOfFile - Check if file has empty line on end of file

Config file

At this moment file config is supported only in yaml format!

Example of file:

fileIterator: Mayesto\CSL\FileIterator\Git # Name of iterator class
rules: # Array of rules
  Mayesto\CSL\Rule\ParserValidation:

  Mayesto\CSL\Rule\ClassAuthorPattern:
    arguments:
      - '.*?<name@example.com>'

  Mayesto\CSL\Rule\ParserValidation:

  Mayesto\CSL\Rule\InternalFunctionNamespace:

  Mayesto\CSL\Rule\ClassPhpDoc:

  Mayesto\CSL\Rule\MethodReturnTypeRequire:

  Mayesto\CSL\Rule\ClassAuthorRequire:

  Mayesto\CSL\Rule\TooMuchEmptyLines:
    arguments:
      - 2 # Number of empty lines generating an error. Default: 2
      
  Mayesto\CSL\Rule\ClassMethodPhpDocEmptyLineBeforeReturn:

  Mayesto\CSL\Rule\EmptyLineOnEndOfFile:
  
  TestRule:
    file: /home/user/TestRule.php # Class which implements RuleInterface

License

Author

This pack was made by Mayesto. If you have any question, send me an email. m@mayesto.pl