symfony/runtime
Symfony Runtime decouples PHP applications from global state by centralizing bootstrapping and execution in a runtime layer. It enables flexible entry points, better testability, and smoother integration with different environments and frameworks.
$_SERVER/$_ENV access, making it easier to phase out global state.$_SERVER gating, which may break legacy code that explicitly relies on $argv or raw $_SERVER. Mitigate by:
$argv/$_SERVER usage.strict_types checks during migration.runtime.php.$argv Usage: "Does our application or any third-party packages directly use $argv (e.g., custom CLI tools, legacy scripts)? If so, how will we refactor?"$_SERVER/$argv?"strict_types=1 in our Laravel codebase to leverage the untyped argument fix?"HttpKernel and dependency injection, with no architectural changes required.Console, DependencyInjection) for unified runtime logic.$argv/$_SERVER misuse and untyped arguments.runtime.php.$argv usage (new risk from CVE fix).$argv-dependent code (if any) to dependency-injected alternatives.strict_types=1 in composer.json.$argv or untyped constructors. Mitigate via:
conflict checks.| Phase | Tasks | Dependencies | Risk Mitigation |
|---|---|---|---|
| 1. Assessment | Audit $argv/$_SERVER; scan for untyped constructors. |
None | Use PHPStan + custom rules. |
| 2. Staging Upgrade | Deploy v8.1.0-BETA3 to staging. | Phase 1 | Feature flags for gradual rollout. |
| 3. CLI Workflow Fixes | Refactor $argv-dependent code (if any). |
Phase 2 | Parallel runtimes for fallback. |
| 4. Package Updates | Update third-party packages to PHP 8.2+. | Phase 3 | Dependency substitution where needed. |
| 5. Runtime Testing | Validate PHP-FPM, CLI, RoadRunner, Lambda. | Phase 4 | Canary releases per environment. |
How can I help you explore Laravel packages today?