Опубликовано:
Symfony 6.3 Добавлены новые возможности
Источник: «Symfony 6.3 curated new features»
Вышел Symfony 6.3. Как и для любого другого выпуска Symfony, наше обещание обратной совместимости применимо, и это означает, что вы сможете легко обновиться до версии 6.3, ничего не меняя в коде.
В течении последних нескольких месяцев мы писали в блогах о замечательных новых возможностях версии 6.3. Я настоятельно рекомендую вам прочитать эти статьи о Symfony 6.3, так как они содержат основные изменения для новой версии:
Early Hints
: Symfony 6.3 добавляет поддержкуEarly Hints
, что позволяет браузерам загружать ресурсы, пока серверы всё ещё готовят ответ. Это значительно улучшает воспринимаемую производительность.- Ограничение
NoSuspiciousCharacters
: Symfony 6.3 включает новое ограничениеNoSuspiciousCharacters
, чтобы избежать spoofing атак, основанных на использовании символов, которые отличаются, но внешне выглядят одинаково. - Атрибуты исключений
HTTP
: Symfony 6.3 вводит два новых атрибута для настройки кода состояния, заголовков и уровня журнала ваших HTTP исключений. - Сопоставление данных
Request
с типизированными объектами: Symfony 6.3 представляет два новых атрибута PHP для сопоставления данных входящего запросаRequest
с типизированными объектами, таким как DTO, и их автоматическая проверка. - Преобразование целевых значений: Symfony 6.3 вводит новый атрибут
ValueResolver
для явного выбора преобразователя аргументов, для использования в аргументах контроллера. - Ограничение надёжности пароля: Symfony 6.3 включает средство проверки надёжности паролей, чтобы проверить, достигают ли данные пароли определённого уровня безопасности на основе их энтропии.
- Обработчик токена
OpenID Connect
: Symfony 6.3 добавляет совместимость с серверамиOpenID Connect
с помощью двух новых обработчиков токеновOIDC
. - Полезная нагрузка запроса: В Symfony 6.3 добавляет метод
getPayload()
к объектуRequest
для получения содержимого POST и/или содержимого тела запроса. - Команда отладки сериализатора: Symfony 6.3 включает новую команду, которая выводит метаданные сериализатора заданного класса, чтобы помочь отладить любые проблемы с
Serializer
. - Улучшения
Form
: Symfony 6.3 улучшает обработку секунд в полях даты/времени, обновляет виджеты HTML 5 для даты/времени и позволяет настраивать параметры опцииplaceholder
. - Улучшения Перечислений: В Symfony 6.3 добавлена поддержка перечислений в выражениях, деревьях конфигурации и параметрах маршрута.
- Улучшения login и logout: Symfony 6.3 позволяет перенаправлять пользователей после их программного логина, добавляет поддержку 'Запомнить меня' для JSON логинов и позволяет очищать данные сайта после выхода пользователя.
- Сопоставитель параметров запроса: Symfony 6.3 включает новый атрибут
MapQueryParameter
для сопоставления и проверки отдельных параметров строки запроса с аргументами контроллера. - Улучшения производительности: Symfony 6.3 улучшает производительность извлечения сообщений перевода, компиляции сервисного контейнера и нормализации/денормализации сериализатора.
- Улучшения эмодзи: Symfony 6.3 добавляет новую функцию для удаления эмодзи из содержимого строки и возможность сжатия всех данных эмодзи для экономии места на диске.
- Компоненты
Webhook
иRemoteEvent
: Symfony 6.3 представляет несколько новых компонентов, упрощающих создание и обработку веб-хуков в ваших приложениях. - Улучшения
Clock
: Symfony 6.3 представляет новый классClock
и новыйClockAwareTrait
; от также интегрирует компонентClock
в другие функции Symfony. - Улучшения DX (developer experience): Symfony 6.3 включает улучшения DX (developer experience) в глобальной переменной
app
, компонентеYAML
, профилировщике, пулах кэша и функциях дампа. - Улучшения
HttpClient
: Symfony 6.3 улучшает HTTP-клиент с новымJsonMockResponse
, множественными повторными URI, дополнительными настраиваемыми параметрами, улучшениями загрузки файлов и поддержкой шаблонов URI. - Улучшения DX (Часть 2): Symfony 6.3 будет включать улучшения DX, такие, как обнаружение невидимых символов в VarDumper, улучшенный дамп YAML дат, параметры сборки сервис контейнера и потоковые JSON ответы.
- Интеграция
Notifier
: Symfony 6.3 добавляет новые интеграцииNotifier
для Twitter, Mastodon, LINE, Pushover, PagerDuty и других. - Улучшения
WebProfiler
: Symfony 6.3 улучшает профилировщик с лучшей доступностью, динамическими иконками и кликабельными путями шаблона. - Улучшения DX (Часть 3): Symfony 6.3 улучшает ограничение
Cascade
, позволяя обрезать XML параметры, устанавливать службы в тестовом контейнере и улучшает обработку сигналовConsole
. - Улучшения Dependency Injection: В Symfony 6.3 улучшен компонент
Dependency Injection
, добавлена поддержка автоподключения сервисов в виде замыканий и вызываемых методов, генерация адаптеров для функциональных интерфейсов. - Компонент
AssetMapper
: Symfony 6.3 включает новый компонентAssetMapper
с полной поддержкой карт импорта в качестве альтернативыWebpack Encore
. - Интеграция
Webhook
сMailer
иNotifier
: Symfony 6.3 обеспечивает полную интеграцию веб-хуков cMailer
иNotifier
для абстрагирования от различий в обработке веб-хуков сторонних сервисов. - Компонент
Scheduler
: Symfony 6.3 включает новый компонентScheduler
тесно интегрирующийся с компонентомMessenger
для создания сообщений, которые должны обрабатываться несколько раз по заранее определённому расписанию.