diff --git a/.phan/config.php b/.phan/config.php new file mode 100644 index 000000000..e7fa266a2 --- /dev/null +++ b/.phan/config.php @@ -0,0 +1,53 @@ + '7.4', + + // A list of directories that should be parsed for class and + // method information. After excluding the directories + // defined in exclude_analysis_directory_list, the remaining + // files will be statically analyzed for errors. + // + // Thus, both first-party and third-party code being used by + // your application should be included in this list. + 'directory_list' => [ + 'examples', + 'src', + 'tests', + 'vendor', + ], + + // A regex used to match every file name that you want to + // exclude from parsing. Actual value will exclude every + // "test", "tests", "Test" and "Tests" folders found in + // "vendor/" directory. + 'exclude_file_regex' => '@^vendor/.*/(tests?|Tests?)/@', + + // A directory list that defines files that will be excluded + // from static analysis, but whose class and method + // information should be included. + // + // Generally, you'll want to include the directories for + // third-party code (such as "vendor/") in this list. + // + // n.b.: If you'd like to parse but not analyze 3rd + // party code, directories containing that code + // should be added to both the `directory_list` + // and `exclude_analysis_directory_list` arrays. + 'exclude_analysis_directory_list' => [ + 'vendor/', + ], +]; diff --git a/composer.json b/composer.json index e1ec68653..415a549c5 100644 --- a/composer.json +++ b/composer.json @@ -31,7 +31,8 @@ "chillerlan/php-settings-container": "^1.2" }, "require-dev": { - "phpunit/phpunit": "^9.0" + "phpunit/phpunit": "^9.0", + "phan/phan": "^2.5" }, "suggest": { "chillerlan/php-authenticator": "Yet another Google authenticator! Also creates URIs for mobile apps."