Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Phpstan Baseline Per Identifier Laravel Package

shipmonk/phpstan-baseline-per-identifier

Split a PHPStan baseline into multiple NEON files grouped by error identifier, with a loader include. Generate baseline as usual, then run split-phpstan-baseline to organize ignores per identifier for easier reviews and maintenance.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit: Excellent alignment with PHPStan's static analysis workflow. The package enhances baseline management by splitting monolithic files into per-identifier components without altering core PHPStan functionality, making it ideal for large codebases where single-file baselines become unwieldy.

Integration feasibility: High. Installation via Composer is trivial, and integration requires only minimal config changes (replacing single baseline include with loader reference). The CLI workflow (generate-baseline + split-phpstan-baseline) integrates seamlessly with existing CI/CD pipelines and Composer scripts.

Technical risk: Low-to-moderate. Primary risks include PHPStan version compatibility (requires ≥2.0), potential edge cases with complex regex patterns in error messages, and filesystem limits for extremely high identifier counts (though uncommon). The "0 dependents" metric suggests limited real-world adoption, but active GitHub maintenance (2.3.0 release) mitigates this.

Key questions:

  • How does it handle identical error messages across different files?
  • Are there performance implications when loading thousands of small baseline files?
  • How does it interact with IDE plugins (e.g., PhpStorm PHPStan integration)?
  • What happens during PHPStan upgrades that change error message formats?

Integration Approach

Stack fit: Native compatibility with Laravel's PHPStan setup (v9+). Works with both neon and PHP-based baselines, fitting standard Laravel project structures. The package requires no additional infrastructure beyond existing PHPStan usage.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport
twbs/bootstrap4
php-http/client-implementation
phpcr/phpcr-implementation
cucumber/gherkin-monorepo
haydenpierce/class-finder
psr/simple-cache-implementation
uri-template/tests