Download the PHP package nowo-tech/phpstan-frankenphp without Composer
On this page you can find all versions of the php package nowo-tech/phpstan-frankenphp. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download nowo-tech/phpstan-frankenphp
More information about nowo-tech/phpstan-frankenphp
Files in nowo-tech/phpstan-frankenphp
Package phpstan-frankenphp
Short Description PHPStan rules that help you migrate from PHP-FPM to FrankenPHP classic, then to worker mode. Rules are split by level with demos for every case.
License MIT
Homepage https://github.com/nowo-tech/PhpStanFrankenPhp
Informations about the package phpstan-frankenphp
PhpStanFrankenPhp
⭐ Found this useful? Install from Packagist and star the repository on GitHub.
PHPStan rules that help you migrate from PHP-FPM to FrankenPHP classic, then to worker mode. Rules are split by level, documented with justification, and shipped with demos for every case.
This bundle is FrankenPHP worker mode friendly.
Installation
Enable levels intentionally (rules are not auto-enabled by extension.neon):
See docs/RULES.md.
Quick example
Why
FrankenPHP classic already changes process lifetime compared to FPM (exit/die, FastCGI APIs, unbounded I/O). Worker mode keeps the app in memory: statics, globals, and $_ENV mutations survive across requests. This extension surfaces those sites in CI so you can fix them in order.
Fixes stay FPM-compatible. The suggested remediations are portable patterns (no FrankenPHP-only APIs). They make the codebase more solid on FPM and safe for worker mode. Details: docs/MIGRATION.md — FPM compatibility.
Levels (application order)
| Order | Ruleset | When |
|---|---|---|
| 1 | ruleset-classic.neon |
Moving FPM → FrankenPHP classic |
| 2 | ruleset-worker.neon |
Enabling FrankenPHP worker |
| 2b | ruleset-worker-strict.neon |
Optional: also flag $_GET/$_POST/… |
| 3 | ruleset-hardening.neon |
Production hardening (timeouts, fork, sleep) |
Full catalog: docs/RULES.md.
Demos
Symfony 8 + FrankenPHP
FrankenPHP worker mode: supported (tested in the Symfony 8 demo with FRANKENPHP_MODE=worker by default). See docs/DEMO-FRANKENPHP.md.
Fixture demos
Intentional violations and clean counterparts under demo/:
Development
Documentation
- Installation
- Configuration
- PSR evaluation (REQ-CS-007)
- Usage
- Contributing
- Code of Conduct
- Changelog
- Upgrading
- Roadmap
- Release
- Security
- Engram
- Spec-driven development
- GitHub Spec Kit
Additional documentation
- Rule catalog
- Roadmap
- Migration guide (FPM → classic → worker)
- FrankenPHP demos
- Demos
- GitHub Actions CI requirements
- Branching strategy
Tests and coverage
- PHPUnit suites:
tests/Rule(RuleTestCase per rule),tests/Unit(helpers / edge branches),tests/Integration(neon wiring). - Line coverage on
src/: 100% (enforced viacomposer coverage-check/ CI on PHP 8.2).
License
MIT — see LICENSE.