mirror of
https://github.com/danog/psalm.git
synced 2024-11-27 12:55:26 +01:00
3335b26cb4
* Fix missing parameter in LSP textDocument.didChange This parameter was accepted, but not documented. Since the JSON-RPC Dispatcher looks at the comments for type information, it would fail to find info and produce: PHP Notice: Undefined offset: 1 in vendor/felixfbecker/advanced-json-rpc/lib/Dispatcher.php on line 141 Combined with issue #4142, this ended up violating the protocol. * Ignore out-of-project files in textDocument.completion Other methods, such as didOpen and didChange already checked for this, but completion did not. This would lead to funny behaviour, where triggering completion would cause the file to be analyzed, but only using the on-disk state. And any changes to the file would never be analyzed. This ignores out-of-project files for completion, too. |
||
---|---|---|
.circleci | ||
.github/workflows | ||
assets/psalm-phar | ||
bin | ||
build/phpunit | ||
docs | ||
examples | ||
src | ||
tests | ||
vendor-bin/box | ||
.appveyor.yml | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.scrutinizer.yml | ||
.travis.yml | ||
box.json.dist | ||
CODE_OF_CONDUCT.md | ||
composer.json | ||
config.xsd | ||
CONTRIBUTING.md | ||
infection.json.dist | ||
keys.asc.gpg | ||
LICENSE | ||
phpcs.xml | ||
phpunit.xml.dist | ||
psalm | ||
psalm-language-server | ||
psalm-plugin | ||
psalm-refactor | ||
psalm.xml.dist | ||
PsalmLogo.png | ||
psalter | ||
README.md | ||
scoper.inc.php |
Psalm
Psalm is a static analysis tool for finding errors in PHP applications, built on top of PHP Parser.
It's able to find a large number of issues, but it can also be configured to only care about a small subset of those.
Try a live demo, or install it in your project by following the Quickstart Guide below.
Psalm documentation
Documentation is available on Psalm’s website, generated from the docs folder.
To get started, check out the installation guide
Interested in contributing?
Have a look at CONTRIBUTING.md.
Acknowledgements
The engineering team @vimeo for encouragement and patience, especially @nbeliard, @erunion and @nickyr.