chore: update plan for symfony 7.4 upgrade

This commit is contained in:
Björn Fromme
2026-02-23 09:11:15 +01:00
parent ca34d4a4f3
commit bd488211bd
+21 -14
View File
@@ -1,9 +1,9 @@
# Symfony 7.4 Upgrade Plan
**Project:** MyEP Next Booking
**Current Version:** Symfony 6.4.31
**Current Version:** Symfony 6.4.x (6.4.33)
**Target Version:** Symfony 7.4 (LTS)
**Date:** 2026-01-09
**Date:** 2026-02-23
**Status:** Ready for Upgrade
---
@@ -18,16 +18,16 @@ The MyEP Next Booking application is well-positioned for a Symfony 7.4 upgrade.
**Key Facts:**
- Symfony 7.4 was released on November 27, 2025
- Requires PHP 8.2.0+ (current: PHP 8.2.29)
- Requires PHP 8.2.0+ (current: PHP 8.3.30)
- LTS version with bug fixes until November 2028, security fixes until November 2029
- Symfony 8.0 = Symfony 7.4 minus deprecations (same features, PHP 8.4 required)
**Pre-Upgrade Status:**
- PHP version: 8.2.29 (compatible)
- PHP version: 8.3.30 (compatible; Symfony 7.4 requires 8.2+)
- OAuth2 Server Bundle: 1.1.0 (compatible)
- Stimulus Bundle: 2.32.0 (compatible)
- Doctrine ORM: 3.6.0 (compatible)
- All 326 tests passing
- All 433 tests passing
- Email validation mode: Configured (html5)
- 18 test-only deprecation warnings (cosmetic, do not affect runtime)
@@ -54,8 +54,8 @@ The previous upgrade plan (dated 2025-12-06) has been updated. All pre-upgrade t
### PHP Version Compatibility
- **Current Runtime:** PHP 8.2.29
- **Composer Platform:** PHP 8.2.28
- **Current Runtime:** PHP 8.3.30
- **Composer Platform:** PHP 8.3.30
- **Symfony 7.4 Required:** PHP 8.2.0+
- **Status:** Compatible
@@ -79,6 +79,7 @@ All 33 Symfony packages currently at 6.4.x need version constraint updates to 7.
| `league/flysystem-sftp-v3` | 3.30.0 | Yes |
| `nelexa/zip` | 4.0.2 | Yes (verify post-upgrade) |
| `spatie/crypto` | 2.1.1 | Yes |
| `easycorp/easyadmin-bundle` | 4.29.1 (^4.27) | Yes |
### Code Quality Assessment
@@ -122,7 +123,7 @@ All Email constraints in the codebase also explicitly use `mode: 'strict'`:
**Impact:** These warnings are cosmetic and do not affect:
- Runtime behavior (all Email constraints use explicit `mode: 'strict'`)
- Symfony 7.4 compatibility (no code changes needed)
- Test results (all 326 tests pass)
- Test results (all 433 tests pass)
**Note:** Warnings can be silenced with `SYMFONY_DEPRECATIONS_HELPER=disabled` if desired.
@@ -180,12 +181,16 @@ Update all packages from `6.4.*` to `7.4.*`:
"symfony/browser-kit": "7.4.*",
"symfony/css-selector": "7.4.*",
"symfony/debug-bundle": "7.4.*",
"symfony/maker-bundle": "^1.0",
"symfony/phpunit-bridge": "7.4.*",
"symfony/stopwatch": "7.4.*",
"symfony/web-profiler-bundle": "7.4.*"
}
}
```
Keep `symfony/maker-bundle` at `^1.0` (compatible with Symfony 7.4).
### 2. Update Symfony Flex Configuration
**File:** `composer.json`
@@ -250,6 +255,7 @@ Deprecations accumulated in Symfony 7.1-7.4 will need review:
1. **Update composer.json**
- Update all Symfony package constraints to `7.4.*`
- Update `extra.symfony.require` to `"7.4.*"`
- Consider tightening `php` to `>=8.2` (Symfony 7.4 requires 8.2+; optional if already on 8.3)
2. **Run Composer Update**
```bash
@@ -303,6 +309,7 @@ Deprecations accumulated in Symfony 7.1-7.4 will need review:
- [ ] User registration
- [ ] Password reset
- [ ] Personal data management
- [ ] EasyAdmin CRUD / admin panels
4. **Check Symfony Profiler**
- Review deprecation warnings (should be minimal)
@@ -388,7 +395,7 @@ ddev exec vendor/bin/dep rollback production
## Testing Checklist
### Unit Tests
- [ ] All PHPUnit tests pass (326 tests)
- [ ] All PHPUnit tests pass (433 tests)
- [ ] No new deprecation warnings
- [ ] Code coverage maintained
@@ -444,7 +451,7 @@ Symfony 8.0 was released alongside 7.4 (November 2025) with identical features b
## Success Criteria
- [ ] All PHPUnit tests pass (326 tests)
- [ ] All PHPUnit tests pass (433 tests)
- [ ] No deprecation warnings in Symfony Profiler
- [ ] All critical user flows functional
- [ ] OAuth2 authentication working
@@ -471,7 +478,7 @@ Symfony 8.0 was released alongside 7.4 (November 2025) with identical features b
---
**Document Version:** 6.0
**Previous Version:** 5.0 (dated 2026-01-05)
**Last Updated:** 2026-01-09
**Status:** Ready for Symfony 7.4 Upgrade
**Document Version:** 7.0
**Previous Version:** 6.0 (dated 2026-01-09)
**Last Updated:** 2026-02-23
**Status:** Ready for Symfony 7.4 Upgrade (updated for current project state)