Масове відправлення Job за допомогою Bus::bulk() у Laravel 13.13

Перекладено ШІ 0 Laravel News 10 червня, 2026

Laravel 13.13.0 впроваджує метод Bus::bulk() для ефективного надсилання завдань та підтримку стандарту PSR-18 для HTTP-клієнта. Дізнайтеся, які ще можливості для роботи зі сховищем та базами даних з’явилися в цьому релізі.

Команда Laravel випустила версію v13.13.0. Серед головних нововведень — метод для масового запуску завдань, підтримка PSR-18 для HTTP-клієнта, покращена робота з вкладеннями у сповіщеннях та низка виправлень для валідації та баз даних.

  • Bus::bulk() для ефективного відправлення великої кількості завдань.
  • Хелпери attachFromStorage() для поштових повідомлень у сповіщеннях.
  • Можливість використання HTTP-клієнта як PSR-18 клієнта.
  • Підтримка мемоїзації через атрибут Cache.
  • Підтримка векторних індексів у MariaDB.
  • Виправлення помилок у валідації та Query Builder.

# Що нового

# Bus::bulk() для масового запуску завдань

@jackbayliss додав метод Bus::bulk(). Він дозволяє відправляти масив завдань у чергу, групуючи їх за з’єднанням та назвою черги. На відміну від Bus::batch(), цей метод не відстежує прогрес у базі даних, що дозволяє уникнути зайвого навантаження при обробці великих обсягів даних.

use Illuminate\Support\Facades\Bus;
 
Bus::bulk(array_map(fn (User $user) => new ProcessUser($user), $users));

PR: #60297

# Вкладення зі сховища для сповіщень

@LucasCavalheri додав методи attachFromStorage() та attachFromStorageDisk() до класу MailMessage. Тепер робота з вкладеннями у сповіщеннях стала ідентичною до функціонала, який вже доступний у Mailables.

(new MailMessage)
    ->attachFromStorage('/path/to/file')
    ->attachFromStorageDisk('s3', 'invoices/1.pdf', 'invoice.pdf', [
        'mime' => 'application/pdf',
    ]);

PR: #60268

# HTTP-клієнт як PSR-18 клієнт

@willrowe оновив клієнт, що повертається через Http::buildClient() — тепер він сумісний із Psr\Http\Client\ClientInterface. Це дозволяє передавати HTTP-клієнт Laravel у сторонні пакети, що потребують PSR-18. При цьому всі запити проходитимуть через ті ж middleware та стеки обробників, що і в решті застосунку.

$geocoder = new GeocodingService(Http::buildClient());

PR: #60295

# Мемоїзація атрибута Cache

@jenky оновив атрибут Cache. Тепер він підтримує впровадження мемоїзованого екземпляра кешу в конструктори та методи resolve, розвиваючи функціонал мемоїзації, доданий у попередніх релізах 13.x.

PR: #60309

# Підтримка векторних індексів MariaDB

@michielvaneerd додав підтримку векторних індексів для MariaDB у Schema Builder.

PR: #60334

# Виправлення валідації та запитів

Цей реліз також містить кілька важливих виправлень:

  • @Button99 виправив логіку порівняння пропорцій у валідації розмірів зображень (#60290).
  • @ahawlitschek усунув помилку в whereDate та whereTime, коли замість назви колонки передається Expression (#60314).
  • @PeteBishwhip налаштував sole() на викидання MultipleRecordsFoundException у відповідних випадках (#60294).
  • @ErfanMomeniii оновив isUniqueConstraintError() для розпізнавання помилки 2627 у SQL Server (#60320).
  • @kieranbrown виправив нормалізацію імен FIFO-черг у хмарних сервісах (#60315).
  • @crynobone забезпечив сумісність Illuminate\Http\Response із Symfony 8.1 (#60318).

Корисні посилання:

Популярні

Інше, що варто прочитати

76 Оновлено 10 червня, 2026

Laravel Boost — ваш стартовий набір для програмування з використанням штучного інтелекту

Вперше у світі Laravel з'являється можливість, яка значно спростить ваше повсякденне програмування завдяки новому пакету Laravel Boost. Читайте статтю, щоб дізнатися, як посилена інтеграція штучного інтелекту може підвищити ефективність вашої роботи та оптимізувати створення проектів у Laravel

22 Оновлено 10 червня, 2026

Створення MCP-серверів на PHP

Модельний контекстний протокол (MCP) відкриває нові горизонти в інтеграції AI-додатків з PHP. Дізнайтеся, як легко створити сервер, що відповідає MCP, та які можливості відкриваються для вашого проєкту

Використання повнотекстового пошуку в Laravel
175 Оновлено 10 червня, 2026

Використання повнотекстового пошуку в Laravel

Laravel пропонує потужні можливості повнотекстового пошуку за допомогою методів whereFullText та orWhereFullText, що дозволяють здійснювати складні запити до бази даних. Дізнайтеся, як реалізувати ефективний пошук для вашого блогу чи системи управління контентом