mayesto / csl
Check files
Installs: 23
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:package
Requires
- php: >7.0
- league/pipeline: ^1.0
- monolog/monolog: ^1.23
- nikic/php-parser: ^4.0
- psr/log: ^1.0
- symfony/config: ^4.1
- symfony/console: ^4.1
- symfony/yaml: ^4.1
This package is not auto-updated.
Last update: 2025-03-31 01:43:31 UTC
README
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