Genéricos añadidos a Eloquent Builder en Laravel 11.15
El equipo de Laravel lanzó la versión 11.15 esta semana, que incluye mejoras en el comando make:mail, soporte para establecer tipos mime en los archivos adjuntos con Resend, actualizaciones de migraciones de base de datos y más.
Agregar Genéricos a Eloquent Builder y Relaciones
Caleb White contribuyó integrando genéricos en relaciones en el framework de Laravel:
Los genéricos proporcionan una mejor auto-completación e intellisense en el IDE sin tener que depender de Larastan para agregar genéricos a las clases mediante el uso de stubs. Tener genéricos en el framework también facilita a los paquetes de terceros definir los tipos internos en sus relaciones personalizadas.
Caleb ha estado contribuyendo a Larastan y ahora está integrando esto en el framework, mejorando el análisis estático en Laravel. Consulta Pull Request #51851 para más detalles.
Solicitar la Creación de una Vista con make:mail
Christoph Rumpel contribuyó con una actualización al comando make:mail
que solicita al usuario el tipo de vista que le gustaría crear:
Hacer Router Tappable
Muhammed Sari agregó el trait Tappable
a la clase Router
, permitiendo escribir algo como lo siguiente:
class RouteRegistrar
{
public function __invoke(Router $router)
{
$router->post('redacted', WebhookController::class)
->name('redacted');
}
}
$router
->tap(new Redacted1Webhooks\RouteRegistrar())
->tap(new Redacted2Webhooks\RouteRegistrar())
// ...
;
// En pruebas...
protected function defineRoutes($router)
{
$router->tap(new \RedactedWebhooks\RouteRegistrar());
}
Actualizaciones a las Migraciones de Base de Datos
Hafez Divandari contribuyó con actualizaciones a las migraciones de base de datos alrededor de SQLite y otras mejoras de calidad de vida. En resumen, Pull Request #51373 introduce las siguientes actualizaciones:
- Extender soporte de SQLite a 3.26+
- Agregar y eliminar claves foráneas en SQLite
- Agregar y eliminar la clave primaria en SQLite
- Preservar el orden de los comandos
- Estado del Blueprint para SQLite
Soporte para Tipos MIME en Resend Mail Transport
Jayan Ratna contribuyó con soporte para establecer tipos MIME en archivos adjuntos dentro de una clase mailable de Resend. Este PR agrega el método withMime()
, que se demuestra en el pull request de la siguiente manera:
public function attachments(): array
{
return [
Attachment::fromPath('/path/to/file')
->as('name.pdf')
->withMime('application/pdf'),
];
}
Notas de la Versión
Puedes ver la lista completa de nuevas características y actualizaciones a continuación y la diferencia entre 11.14.0 y 11.15.0 en GitHub. Las siguientes notas de la versión son directamente del changelog