Skip to content

Instantly share code, notes, and snippets.

@realodix
Last active August 15, 2020 20:48
Show Gist options
  • Save realodix/538de8d627ffc1eaec8ad59fffe22892 to your computer and use it in GitHub Desktop.
Save realodix/538de8d627ffc1eaec8ad59fffe22892 to your computer and use it in GitHub Desktop.
PHP Insights Configuration
<?php
return [
/*
|--------------------------------------------------------------------------
| Default Preset
|--------------------------------------------------------------------------
|
| Supported: "default", "laravel", "symfony", "magento2", "drupal"
|
*/
'preset' => 'laravel',
/*
|--------------------------------------------------------------------------
| IDE
|--------------------------------------------------------------------------
|
| Supported: "textmate", "macvim", "emacs", "sublime", "phpstorm",
| "atom", "vscode".
|
*/
'ide' => null,
/*
|--------------------------------------------------------------------------
| Configuration
|--------------------------------------------------------------------------
|
*/
'exclude' => [
// 'path/to/directory-or-file'
],
'add' => [
NunoMaduro\PhpInsights\Domain\Metrics\Architecture\Classes::class => [
NunoMaduro\PhpInsights\Domain\Insights\ForbiddenFinalClasses::class,
],
],
'remove' => [
// Code
\NunoMaduro\PhpInsights\Domain\Insights\ForbiddenDefineFunctions::class,
\NunoMaduro\PhpInsights\Domain\Insights\ForbiddenNormalClasses::class,
\NunoMaduro\PhpInsights\Domain\Insights\ForbiddenTraits::class,
\PhpCsFixer\Fixer\Comment\NoEmptyCommentFixer::class,
\PhpCsFixer\Fixer\ControlStructure\NoSuperfluousElseifFixer::class,
\PhpCsFixer\Fixer\Operator\NewWithBracesFixer::class,
\SlevomatCodingStandard\Sniffs\Commenting\UselessFunctionDocCommentSniff::class,
\SlevomatCodingStandard\Sniffs\TypeHints\DeclareStrictTypesSniff::class,
\SlevomatCodingStandard\Sniffs\TypeHints\DisallowMixedTypeHintSniff::class,
\SlevomatCodingStandard\Sniffs\TypeHints\ParameterTypeHintSniff::class,
\SlevomatCodingStandard\Sniffs\TypeHints\PropertyTypeHintSniff::class,
\SlevomatCodingStandard\Sniffs\TypeHints\ReturnTypeHintSniff::class,
// Style
\PHP_CodeSniffer\Standards\Generic\Sniffs\Files\LineEndingsSniff::class,
\PHP_CodeSniffer\Standards\PSR12\Sniffs\Classes\ClassInstantiationSniff::class,
\PhpCsFixer\Fixer\Basic\BracesFixer::class,
\PhpCsFixer\Fixer\ClassNotation\OrderedClassElementsFixer::class,
\PhpCsFixer\Fixer\Operator\BinaryOperatorSpacesFixer::class,
\PhpCsFixer\Fixer\Phpdoc\AlignMultilineCommentFixer::class,
\PhpCsFixer\Fixer\Whitespace\MethodChainingIndentationFixer::class,
\PhpCsFixer\Fixer\Whitespace\NoWhitespaceInBlankLineFixer::class,
\PhpCsFixer\Fixer\Whitespace\SingleBlankLineAtEofFixer::class,
\PhpCsFixer\Fixer\Whitespace\SingleBlankLineAtEofFixer::class,
\SlevomatCodingStandard\Sniffs\Commenting\DocCommentSpacingSniff::class,
\SlevomatCodingStandard\Sniffs\Namespaces\AlphabeticallySortedUsesSniff::class,
],
'config' => [
\NunoMaduro\PhpInsights\Domain\Insights\CyclomaticComplexityIsHigh::class => [
'maxComplexity' => 25,
],
\NunoMaduro\PhpInsights\Domain\Insights\ForbiddenPrivateMethods::class => [
'title' => 'The usage of private methods is not idiomatic in Laravel.',
],
\PHP_CodeSniffer\Standards\Generic\Sniffs\Files\LineLengthSniff::class => [
'lineLimit' => 120,
'absoluteLineLimit' => 160,
],
],
/*
|--------------------------------------------------------------------------
| Requirements
|--------------------------------------------------------------------------
|
| Here you may define a level you want to reach per `Insights` category.
| When a score is lower than the minimum level defined, then an error
| code will be returned. This is optional and individually defined.
|
*/
'requirements' => [
// 'min-quality' => 0,
// 'min-complexity' => 0,
// 'min-architecture' => 0,
// 'min-style' => 0,
// 'disable-security-check' => false,
],
];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment