mirror of
https://github.com/danog/psalm.git
synced 2024-11-29 20:28:59 +01:00
bin | ||
examples | ||
src/Psalm | ||
tests | ||
.gitignore | ||
.travis.yml | ||
composer.json | ||
composer.lock | ||
config.xsd | ||
LICENSE | ||
phpcs.xml | ||
phpunit.xml | ||
psalm.xml | ||
PsalmLogo.png | ||
README.md |
Psalm is a static analysis tool for finding errors in PHP applications.
- v0.3.x supports checking PHP 5.4 - 7.1 code, and requires PHP 5.5+ to run.
- v0.2.x supports checking PHP 5.4 - 7.0 code and requires PHP 5.4+ to run.
Check out the wiki or try a live demo!
Quickstart Guide
Install via Composer:
composer require --dev "vimeo/psalm:dev-master"
composer install
Add a psalm.xml
config:
cat > psalm.xml << EOF
<?xml version="1.0"?>
<psalm
stopOnFirstError="false"
useDocblockTypes="true"
>
<projectFiles>
<directory name="src" />
</projectFiles>
<issueHandlers>
<MissingReturnType errorLevel="info" />
<MissingClosureReturnType errorLevel="info" />
<MissingPropertyType errorLevel="info" />
</issueHandlers>
</psalm>
EOF
Then run Psalm with:
./vendor/bin/psalm
The above config is fairly spartan, and will show you all possible errors, including many that might be irrelevant to you. A more lenient config is provided here, and you can learn about how to suppress certain issues here.
Acknowledgements
The engineering team @vimeo for encouragement and patience, especially @nbeliard, @erunion and @nickyr.
Thanks also to @nikic for creating the excellent php-parser, on top of which Psalm is built.