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 с изменениями, разбитыми на отдельные коммиты для удобного просмотра.

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

Рекомендательные технологии Подробнее

Observers в Laravel: чистый способ обработки событий моделей

Что такое наблюдатели в Laravel и как их использовать для чистой обработки событий моделей. Разбор, примеры, регистрация, преимущества и сравнение с событийно-слушательным подходом.

Laravel-Zipstream: потоковая генерация ZIP-архивов без нагрузки на сервер

Обзор пакета laravel-zipstream для потоковой генерации ZIP-архивов в Laravel. Разбираем, как работает стриминг, его преимущества и когда его стоит использовать.

Вышла версия OpenVPN 2.7 с поддержкой модуля DCO для Linux-ядра и mbedTLS 4

OpenVPN 2.7 вышла с поддержкой ускоренного модуля DCO для Linux-ядра, улучшенной серверной архитектурой, обновлённой работой с DNS и расширенной поддержкой TLS через mbedTLS 4.

Google Sheets как база данных в Laravel

Пакет grosv/eloquent-sheets позволяет использовать Google Sheets как источник данных для Eloquent-моделей Laravel. Решение подходит для MVP, внутренних сервисов и небольших проектов с совместным редактированием данных.