parameters: paths: - api - Civi - CRM - tests excludePaths: analyse: - CRM/*/DAO/* - tests/phpunit/bootstrap.php scanFiles: - twingle.civix.php - tools/phpunit/vendor/bin/.phpunit/phpunit/src/Framework/TestCase.php scanDirectories: - tools/phpunit/vendor/bin/.phpunit/phpunit/src/Framework bootstrapFiles: - tools/phpunit/vendor/bin/.phpunit/phpunit/vendor/autoload.php - vendor/autoload.php - phpstanBootstrap.php level: 9 universalObjectCratesClasses: - Civi\Core\Event\GenericHookEvent checkTooWideReturnTypesInProtectedAndPublicMethods: true checkUninitializedProperties: true checkMissingCallableSignature: true treatPhpDocTypesAsCertain: false exceptions: check: missingCheckedExceptionInThrows: true tooWideThrowType: true checkedExceptionClasses: - \Webmozart\Assert\InvalidArgumentException implicitThrows: false ignoreErrors: # Note paths are prefixed with "*/" to work with inspections in PHPStorm because of: # https://youtrack.jetbrains.com/issue/WI-63891/PHPStan-ignoreErrors-configuration-isnt-working-with-inspections # Example #- # Accessing results of API requests #message: "#^Offset '[^']+' does not exist on array[^\\|]+\\|null.$#" #path: */tests/phpunit/**/*Test.php tmpDir: .phpstan