psalm
https://github.com/vimeo/psalm
PHP
A static analysis tool for finding errors in PHP applications
Triage Issues!
When you volunteer to triage issues, you'll receive an email each day with a link to an open issue that needs help in this project. You'll also receive instructions on how to triage issues.
Triage Docs!
Receive a documented method or class from your favorite GitHub repos in your inbox every day. If you're really pro, receive undocumented methods or classes and supercharge your commit history.
PHP not yet supported17 Subscribers
Add a CodeTriage badge to psalm
Help out
- Issues
- fix(templates): trait method params use the types given to @use
- fix(call): the out type of a by-ref param reads the templates bound by later arguments
- Writes to a hooked interface property are not type-checked
- Intersection type in an @method parameter is reported as InvalidDocblock
- `Closure::fromCallable([$this, ...])` of a method returning static does not bind static to `$this`
- $this left in a template argument expands to the receiver on each call, growing the type exponentially
- Incompatible docblock return types inherited from two interfaces make the method mixed and report InvalidReturnType on the interface
- static declared in @implements/@extends leaks into inferred template arguments and chained calls hang
- Calling a method returning T inside a class with @template T of static hangs
- Static call on a class name binds $this passed as a template argument to the called class
- Docs
- PHP not yet supported