Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти Інструменти Події
Інше
Про нас Реклама
Laravel 13.15.0: типізовані аксесори для перекладів та покращення безпеки
Новини 14 червня 2026

Laravel 13.15.0: типізовані аксесори для перекладів та покращення безпеки

Команда Laravel випустила версію 13.15.0, яка приносить типізовані аксесори для перекладів, покращену роботу з JSON Schema, виділений драйвер черг для Laravel Cloud, а також виправлення критичних вразливостей у валідації та маршрутизації.

Типізовані аксесори для перекладів

Хелпери перекладів раніше повертали широкі типи: __() повертав array|string|null, а trans() - Translator|array|string. Хоча це працювало в Blade, це створювало труднощі у суворо типізованому коді та статичному аналізі. У новій версії до класу Translator додано два типізовані методи, які повертають конкретний тип:

public function label(): string
{
    return trans()->string($this->name);
}

public function options(): array
{
    return trans()->array($this->options_key);
}

Цей підхід повторює логіку існуючих типізованих хелперів, таких як config() та request().

Десеріалізація JSON Schema

Компонент JsonSchema отримав метод fromArray(), який перетворює сирий масив JSON Schema назад в об'єкти Type - це зворотна операція до серіалізації. Також додано підтримку об'єднань декількох типів (multi-type union) у конструкторі схем.

Виділений драйвер черг для Laravel Cloud

В релізі з'явився спеціальний драйвер черг для керованих черг Laravel Cloud. Керовані черги тепер завантажуються до сервіс-провайдерів, драйвер викидає виключення ManagedQueueNotFoundException, коли налаштована черга відсутня, та виправлено нормалізацію імен FIFO-черг. Заголовок ідентифікатора запиту перейменовано з X-Request-ID на Cloud-Request-ID і тепер він виводиться в логах.

Enum у методі Queue::route()

Тепер можна передавати enum-кейси в метод Queue::route() як для імені черги, так і для з'єднання при маршрутизації завдань.

Виправлення вразливості date_equals

Правило валідації date_equals використовувало нестроге порівняння. Невалідний рядок дати парсився як null, а null == 0 оцінюється як true, тому невалідна дата могла пройти валідацію проти референсної дати, що парситься у хибне значення (наприклад, 1970-01-01 00:00:00). Виправлення використовує строге порівняння для оператора рівності, зберігаючи нестроге порівняння для легітимних об'єктів DateTime.

Обмеження десеріалізації маршрутів

Десеріалізація маршрутів тепер обмежує класи, які вона приймає, зменшуючи поверхню атаки для ін'єкції об'єктів під час кешування та розв'язання маршрутів.

Виправлення хелпера Number

Виправлено кілька крайніх випадків у хелпері Number: метод Number::fileSize() тепер обробляє від'ємні значення байтів, Number::trim() більше не повертає null для INF та NAN, а Number::pairs() коректно обробляє від'ємні кроки та викидає виключення для нульового кроку, щоб запобігти нескінченним циклам.

Інші виправлення та покращення

  • Виправлено нескінченну рекурсію, коли scope моделі визначається з приватним атрибутом, і коли група middleware посилається на саму себе
  • Команда queue:failed тепер показує реальне ім'я класу
  • Додано Prohibitable до команд cache:clear та queue:flush
  • Клас InvokedProcess тепер підтримує макроси
  • Забезпечено, щоб незмінені скомпільовані Blade-шаблони не залишалися прострочені
  • Додано generics до геттерів DatabaseTransactionsManager та методу QueueRoutes::all()

Повний список змін доступний у офіційному changelog та релізі v13.15.0.

73

Читати в документації

Коментарі

Увійдіть, щоб залишити коментар

Будьте першим, хто залишить коментар!

Читайте також

Filament v5.10.0
Новини 12 жовтня 2026

Filament v5.10.0: сітка в rich editor, скелетони таблиць і десятки виправлень

Вийшов Filament v5.10.0: елементи керування сіткою в rich editor, допоміжний контент для віджетів-графіків, скелетони завантаження таблиць, submitOnCompletion() для OneTimeCodeInput та багато виправлень авторизації, доступності й стану.

14
Laravel AI SDK на практиці
Новини 09 жовтня 2026

Laravel AI SDK на практиці: агент, що стоїть за There There

Фрік Ван дер Гертен розповідає, як у Spatie побудували AI-шар хелпдеска There There на Laravel AI SDK: клас агента, інструменти з типізованою JSON-схемою та делегування роботи звичайним domain-діям.

11

Пакети за темою

Laravel Data

spatie/laravel-data

Типізовані об'єкти даних замість масивів: один клас описує валідацію, серіалізацію в JSON, TypeScript-типи і перетворення з запиту чи моделі. Знімає дублювання між FormRequest, ресурсом і DTO.

1,774 4.23.0 13 3