php-static-analysis/psalm-plugin
A Psalm plugin for PHP static analysis that extends Psalm with additional checks and integrations, helping teams catch issues earlier and enforce consistent code quality in their projects.
Adopt when:
Look elsewhere when:
ReflectionAttribute::newInstance() is sufficient and adds no dependency.config:cache, and route:cache, or with inherited/abstract classes and repeatable attributes.Caveat for this review: the release note is a single line. There is no changelog history, benchmark, or API documentation in the supplied data, so the performance and ergonomics claims are unverified. Treat the adoption decision as pending a short technical spike rather than settled.
Executives: A small open-source PHP package that lets us declare behavior with language-level attributes instead of boilerplate code. Version 0.5.0 makes those declarations cheaper to read at runtime — an efficiency and developer-ergonomics improvement, not a new capability. Cost to trial is low; the main risk is maturity, since it is pre-1.0 and can change without notice. Recommendation: pin the version and run it as a scoped spike before it appears in any committed roadmap item.
Engineering: 0.5.0 stores attribute parameters at discovery time so consumers can read arguments without reflection — fewer newInstance() calls and a cleaner interface for anyone writing an attribute reader. It remains 0.x: expect breaking changes and no LTS. Proposed next step is a timeboxed spike that wires one real attribute (a feature flag or rate-limit marker), benchmarks it against raw reflection, and confirms it survives php artisan optimize and cache warm-up before we take a dependency on it.
How can I help you explore Laravel packages today?