Skip to content

Add Symfony 7/8 compatibility#25

Open
Kalipso0505 wants to merge 3 commits intospaceemotion:wip/v1from
Kalipso0505:feat/symfony-8-compatibility
Open

Add Symfony 7/8 compatibility#25
Kalipso0505 wants to merge 3 commits intospaceemotion:wip/v1from
Kalipso0505:feat/symfony-8-compatibility

Conversation

@Kalipso0505
Copy link
Contributor

@Kalipso0505 Kalipso0505 commented Mar 14, 2026

Summary

  • Bump minimum PHP version to >=8.2 (required by Symfony 7+)
  • Add Symfony 8 support for symfony/console and symfony/process
  • Drop EOL Symfony versions (^3, ^4, ^5)
  • Replace deprecated static $defaultName with #[AsCommand] attribute (removed in Symfony 7)
  • Replace Application::add() with Application::addCommand() (removed in Symfony 8)
  • Remove redundant SUCCESS constant (inherited from Command since Symfony 5.4)
  • Replace abandoned qossmic/deptrac-shim with qossmic/deptrac ^2.0
  • Clean up all dependency constraints to drop versions incompatible with PHP 8.2+
  • Update Dockerfile and CI matrix to match new PHP minimum (8.2, 8.3)
  • Replace deprecated ::set-output with $GITHUB_OUTPUT in CI workflows
  • Remove delisted symplify/easy-coding-standard-prefixed from suggest
  • Simplify PHP_OS_FAMILY check (always defined since PHP 7.2)

Note: PHP 8.4 is not included in the CI matrix because vimeo/psalm ^5.0 does not support PHP 8.4 (highest supported version is ~8.3.0). Once Psalm 6 reaches a stable release with PHP 8.4 support, the CI matrix and the psalm constraint can be updated accordingly.

Test plan

  • composer install resolves successfully with Symfony 7.x
  • composer install resolves successfully with Symfony 8.x
  • bin/phpcstd runs without errors
  • CI pipeline passes on PHP 8.2 and 8.3

🤖 Generated with Claude Code

@Kalipso0505 Kalipso0505 force-pushed the feat/symfony-8-compatibility branch 4 times, most recently from 8c772a7 to a0c90af Compare March 14, 2026 17:29
Kalipso0505 and others added 3 commits March 14, 2026 18:32
- Bump minimum PHP version to >=8.2 (required by Symfony 7+)
- Add Symfony 8 support for symfony/console and symfony/process
- Drop EOL Symfony versions (^3, ^4, ^5) and incompatible dependency versions
- Replace deprecated static $defaultName with #[AsCommand] attribute (removed in Symfony 7)
- Replace Application::add() with Application::addCommand() (removed in Symfony 8)
- Remove redundant SUCCESS constant (inherited from Command since Symfony 5.4)
- Replace abandoned qossmic/deptrac-shim with qossmic/deptrac ^2.0
- Normalize ext-SimpleXML to ext-simplexml and fix sorting
- Remove unused file_get_contents import in Rector.php
- Use literal command name in setDefaultCommand() to avoid nullable type issue
- Simplify PHP_OS_FAMILY check (always defined since PHP 7.2)
- Update Dockerfile to PHP 8.2

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Replace PHP matrix [7.4, 8.0, 8.1] with [8.2, 8.3]
- Replace deprecated ::set-output with $GITHUB_OUTPUT
- PHP 8.4 excluded until vimeo/psalm supports it

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Rename deprecated excludes_analyse to excludePaths
- Remove stale ignoreErrors pattern for PHPCSTD_ constants
- Add pre-existing errors in Config.php and RunCommand.php to baseline
  (uncovered by the now-working PHPStan config)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@Kalipso0505 Kalipso0505 force-pushed the feat/symfony-8-compatibility branch from a0c90af to e3e5c13 Compare March 14, 2026 17:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant