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 supported18 Subscribers
Add a CodeTriage badge to psalm
Help out
- Issues
- Fix the signature for `Sqlite3Result::columnName`
- @psalm-suppress <SinkSpecificIssue> (e.g. TaintedHeader) silently fails; only TaintedInput works
- [6.x] Resolve method templates for polymorphic array callables
- Fix undefined array key crash in FunctionDocblockManipulator
- RuntimeException: float not representable as int in CastAnalyzer on PHP 8.5
- `@psalm-assert-if-true !=''` widens `?class-string<X>` to `class-string<X>|non-empty-string`
- [6.x] Quiet CLI output when running under an AI agent
- [6.x] Add `TKeyedArray::make()` factory to 6.x for cross-version plugin compatibility
- StubsGenerator crashes with UnexpectedValueException when signature return type contains string|int|float|bool (collapsed to TScalar)
- [7.x] Enhanced compact format: drop ERROR prefix, add taint chain summary
- Docs
- PHP not yet supported