Ответ
В последних коммерческих проектах я работал с Symfony 6.3 и Symfony 6.4. Для долгосрочных проектов предпочитаю выбирать LTS (Long Term Support) версии, такие как Symfony 6.2 LTS, которая поддерживается до ноября 2027 года. Это дает стабильность и безопасность.
Пример из composer.json проекта на Symfony 6.2 LTS:
{
"require": {
"php": ">=8.1",
"symfony/framework-bundle": "^6.2",
"symfony/console": "^6.2",
"symfony/runtime": "^6.2"
}
}
Проверка версии в проекте:
# Через консоль Symfony
php bin/console --version
# Symfony 6.2.12 (env: dev, debug: true)
# Через Composer
composer show symfony/framework-bundle | grep versions
Опыт обновления: При переходе с Symfony 5.4 на 6.x основная работа заключалась в обновлении типизации (добавление возвращаемых типов : void, : Response в контроллерах), адаптации под новый аутентификатор Security и проверке совместимости сторонних бандлов. Использование symfony/flex и recipes значительно упростило этот процесс.