Laravel 13.2.0: что нового

Laravel 13.2.0 - следующий крупный релиз фреймворка, запланированный на март 2026 года. Минимальная версия PHP повышена до 8.3. Поддержка будет осуществляться по стандартному циклу: исправления ошибок до третьего квартала 2027 года и обновления безопасности до первого квартала 2028 года.

Поддержка PHP Attributes

В Laravel 13.2.0 добавлена поддержка PHP Attributes как альтернативы свойствам классов для конфигурации компонентов. Это изменение не ломает обратную совместимость: старый способ через свойства продолжает работать.

В моделях Eloquent атрибуты позволяют заменить такие свойства, как $table, $hidden и $fillable:

#[Table('users', key: 'user_id', keyType: 'string', incrementing: false)]
#[Hidden(['password'])]
#[Fillable(['name', 'email'])]
class User extends Model {}

Аналогичный подход применяется к очередям. Конфигурацию теперь можно задавать прямо в классе задания:

#[Connection('redis')]
#[Queue('podcasts')]
#[Tries(3)]
#[Timeout(120)]
class ProcessPodcast implements ShouldQueue {}

Эти атрибуты работают не только для заданий, но и для listeners, уведомлений, почтовых классов и событий трансляции.

Для консольных команд сигнатура и описание также могут быть заданы через атрибуты:

#[Signature('mail:send {user} {--queue}')]
#[Description('Send a marketing email to a user')]
class SendMailCommand extends Command {}

Поддержка атрибутов добавлена и в другие компоненты, включая form request, API-ресурсы, фабрики и сидеры.

Cache::touch()

Добавлен метод Cache::touch(), который позволяет продлить TTL кэшированного значения без его получения или повторной записи.

// продлить на заданное количество секунд
Cache::touch('user_session:123', 3600);

// продлить до конкретного времени
Cache::touch('analytics_data', now()->addHours(6));

// продлить без ограничения
Cache::touch('report_cache', null);

Требования к версии PHP

Laravel 13.2.0 требует PHP 8.3 как минимальную версию. В Laravel 12 минимальная версия была 8.2.

Сроки поддержки

Поддержка релиза соответствует стандартной политике Laravel. Исправления ошибок будут выпускаться до третьего квартала 2027 года, а обновления безопасности до первого квартала 2028 года.

Обновление до Laravel 13.2.0

Для упрощения обновления проектов можно использовать Laravel Shift. Инструмент создает pull request с изменениями, разбитыми на отдельные коммиты для удобного просмотра.

Комментарии (0)

Войдите, чтобы оставить комментарий

Похожие статьи

Логирование активности пользователей в Laravel с Activity Log v5

Обзор обновлений пакета spatie/laravel-activitylog v5 для Laravel. Рассматриваются новый трейт, буферизация логов, API для указания инициатора действий и изменения структуры хранения данных.

Как обнаруживать и устранять race condition в приложениях Laravel

Race condition - распространённая проблема в веб-приложениях с параллельными запросами. В статье разбирается, как обнаружить такие ошибки в Laravel и какие механизмы помогают их устранить.