Actualizado el domingo, 17 marzo, 2024
El equipo de Laravel ha lanzado las versiones 9.33 y 9.34, introduciendo Laravel Precognition, la sintaxis corta de atributos para componentes de hoja de cierre automático, y más.
Nota: también cubrimos las principales novedades lanzadas en Laravel 9.33, lanzada el pasado viernes entre el típico lanzamiento semanal.
Laravel Precognition (9.33)
Tim MacDonald contribuyó con la introducción de Precognition. Mientras que una explicación completa de fuera del alcance de este artículo, echa un vistazo a Pull Request #44339 para una descripción profunda de lo que ofrece Precognition. En resumen, aquí está el TLDR:
Precognición es una nueva característica del framework que permitirá a los desarrolladores crear nuevas y mejores experiencias para sus usuarios.
Deberías leer el Pull Request #44339 para ver ejemplos de cómo podrías utilizar esta nueva y emocionante característica.
Sintaxis corta de atributos para componentes de hoja de cierre automático (9.34)
Perry van der Meer contribuyó con la sintaxis de atributos cortos para los componentes de hoja de cierre automático. Este PR se basa en la sintaxis de atributos cortos lanzada en Laravel 9.32 para los componentes Blade:
<!-- current short syntax -->
<x-profile :$userId></x-profile>
<!-- short syntax for self-closing component -->
<x-profile :$userId/>
Renderizar «BackedEnum» de PHP en las vistas de Blade (9.34)
Nuno Maduro contribuyó con el soporte de renderización de Blade para los enums respaldados. Tome el siguiente ejemplo de vista de ruta:
// routes/web.php
Route::get('/', function () {
return view('dashboard', ['role' => UserRoles:: ADMIN]);
});
Dada la variable $role, ahora se renderizará correctamente en Blade:
Hello, {{ $role }}.
<!-- ❌ Before: TypeError: htmlspecialchars(): Argument #1 ($string) must be of type string -->
<!-- ✅ After: Hello, Admin. -->
Add cc() method to MailFake (9.33)
Adrian Nürnberger ha aportado el método cc() que faltaba para las falsificaciones de correo. La implementación es la siguiente:
public function cc($users)
{
return (new PendingMailFake($this))->cc($users);
}
Ignorar case en Stringable contains() y containsAll() (9.33)
Jae Toole ha contribuido a la compatibilidad con las mayúsculas y minúsculas de los métodos contains() y containsAll() de Stringable:
// returns true
$this->stringable('taylor')
->contains(['LOR'], true);
// returns true
$this->stringable('taylor otwell')
->containsAll(['TAYLOR', 'OTWELL'], true);
Release Notes
You can see the complete list of new features and updates below and the diff between 9.33.0 and 9.34.0 on GitHub. The following release notes are directly from the changelog:
v9.34.0
Added
- Short attribute syntax for Self Closing Blade Components (#44413)
- Adds support for PHP’s BackedEnum to be «rendered» on blade views (#44445)
Fixed
- Fixed Precognition headers for Symfony responses (#44424)
- Allow to create databases with dots (#44436)
- Fixes dd source on windows (#44451)
Changed
- Adds error output to db command when missing host (#44394)
- Changed
Illuminate/Database/Schema/ForeignIdColumnDefinition::constrained()
(#44425) - Allow maintenance mode events to be listened to in closure based listeners (#44417)
- Allow factories to recycle multiple models of a given typ (#44328)
- Improves dd clickable link on multiple editors and docker environments (#44406)
v9.33.0
Added
- Added
Illuminate/Support/Testing/Fakes/MailFake::cc()
(#44319) - Added Ignore Case of Str::contains and Str::containsAll to Stringable contains and containsAll (#44369)
- Added missing morphs methods for the ULID support (#44364)
- Introduce Laravel Precognition (#44339)
- Added
Illuminate/Routing/Route::flushController()
(#44386)
Fixed
- Fixes memory leak on PHPUnit’s Annotations registry (#44324, #44336)
- Fixed
Illuminate/Filesystem/FilesystemAdapter::url()
with configprefix
(#44330) - Fixed the «Implicit conversion from float to int loses precision» error in Timebox Class (#44357)
[…] Un servidor web. Este tutorial vamos a usar XAMPP, en el siguiente tutorial explicamos como instalar un servidor web con…
[…] está buscando crear proyectos web con Python, Cómo iniciar rápidamente un proyecto Django y una aplicación Django es un buen lugar…
[…] crear un entorno virtual denominado .venv (o el nombre que desee) con el siguiente […]
[…] ver más sobre el comando cat puede ver en nuestros articulos: https://blog.pachahosting.com/como-usar-el-comando-cat-para-escribir-un-texto-en-un-archivo/ y […]
[…] Cómo usar el comando Cat para escribir un texto en un archivo ◀Previous Post Next Post Coming Soon...▶ […]