Вышло очередное обновление фреймворка — версия 12.48.0. Как всегда, релиз сфокусирован на стабильности, исправлении багов и внесении небольших, но полезных улучшений в различные компоненты.
🌟 Исправления критических ошибок и улучшения
✅ Бесконечный цикл в отложенной очереди: Решена проблема с бесконечным циклом при использовании
Illuminate\Queue\SerializesModels в отложенных заданиях.✅ Совместимость со сторонними guard'ами: Внесены повторные правки для обеспечения обратной совместимости с нестандартными системами аутентификации.
✅ Работа с блокировками: Исправлена ошибка в
Cache::restoreLock() для драйвера MemoizedStore.✅ Чтение файлов: Исправлен баг с частичным чтением файлов в
Filesystem::sharedGet().✅ Декораторы для валидации: Класс
Enum для правил валидации теперь реализует интерфейс Stringable.✅ Обработка JSON во HTTP-клиенте: Появилась возможность задавать флаги для декодирования JSON в ответах клиента.
✨ Новые возможности
✅ CORS Middleware: В middleware
HandleCors добавлен метод skipWhen(), позволяющий гибко управлять применением CORS-правил.✅ События для заданий: Добавлено новое событие
BatchFinished, упрощающее отслеживание завершения пакетной обработки заданий.✅ Алиасы для выражений в Query Builder: Появилась возможность создавать собственные SQL-выражения с использованием метода
alias().✅ Обновление индексов
failed_jobs: Удалены лишние индексы из таблицы failed_jobs, что должно повысить производительность.⚡️ Прочие улучшения и рефакторинг
✅ Производительность: Оптимизировано создание объектов в контейнере за счёт отказа от
Reflection API в пользу прямого создания.✅ Тестирование: Изоляция скомпилированных шаблонов Blade для каждого процесса при параллельном тестировании.
✅ Типы данных: Значительные улучшения типизации в классах
Illuminate\Support\Str и PendingRequest, добавлены соответствующие тесты.✅ Переводы: Теперь строки перевода могут содержать квадратные и фигурные скобки.
✅ Документация блоков: Добавлены и исправлены аннотации PHPDoc в нескольких классах.
Полный список изменений можно найти в официальном релизе.
📱 @dev_notes_ru
#Laravel #Laravel12