News

Laravel 9.44 is released with native support for changing database columns and more

Published
Laravel 9.44 is released with native support for changing database columns and more image

The Laravel team released 9.44 this week with Vite 4 support, per-channel notification connection config, native rename/drop for all database drivers, and more:

Doctrine is not required to rename/drop columns

Hafez Divandari contributed native support for renaming and dropping columns on all databases supported by Laravel. The pull request description has a table that will help you determine if you need doctrine/dbal to support renaming and dropping columns:

Database Supported version on Laravel Rename column support Drop column support
MariaDB 10.3+ 10.5.2+ (Docs) Already implemented
MySQL 5.7+ 8.0+ (Docs) Already implemented
PostgreSQL 10.0+ 10.0- Already implemented
SQLite 3.8.8+ 3.25.0+ 3.35.0+
SQL Server 2017+ 2017- Already implemented

Per-notification queue connection configuration

James Hemery contributed the ability to specify a queue connection on a per-notification channel basis. You can do so by defining a viaConnections() method that returns each notification channel's key/value pair and the connection it should use.

/**
 * Determine which connections should be used for each notification channel.
 *
 * @return array
 */
public function viaConnections()
{
    return [
        'mail' => 'redis',
        'database' => 'sync',
    ];
}

See Customizing The Notification Queue Connection section of the notifications documentation for full details!

HTTP client "throw if" Closure support

Günther Debrauwer contributed passing a Closure to the HTTP client throwIf() method. Previously, only a boolean was supported, but now you can customize the logic to determine if you should throw an exception:

Http::throwIf(fn ($response) => $response->status() !== 404)
    ->get('https://laravel.com/foo');

Http::get('https://laravel.com/foo')
    ->throwIf(fn ($response) => $response->status() !== 404);

Vite 4.0

Tim MacDonald added Vite 4 support to Jetstream, Breeze, and the Vite Plugin. If you create a new Laravel application or install any of the above, you'll start with Vite 4! To learn more, read Vite 4.0 is out! by the Vite team.

Release Notes

You can see the complete list of new features and updates below and the diff between 9.43.0 and 9.44.0 on GitHub. Once the full changelog is available, we'll also list it here!

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Filed in

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
Slow Job Alerts and Replica Commit IDs in Laravel 13.40 image

Slow Job Alerts and Replica Commit IDs in Laravel 13.40

Read article
Flock: A Free, Native Herd Alternative for Laravel image

Flock: A Free, Native Herd Alternative for Laravel

Read article
Live Props for Real-Time Updates in Inertia.js v3.11 image

Live Props for Real-Time Updates in Inertia.js v3.11

Read article
Cooldown Dependency Policy now in Composer 2.11 image

Cooldown Dependency Policy now in Composer 2.11

Read article
Email Sending and Testing for Laravel in One Account image

Email Sending and Testing for Laravel in One Account

Read article
Decide with Jev: Tie Every AI Check to the Exact Draft image

Decide with Jev: Tie Every AI Check to the Exact Draft

Read article