Symfony 5, la última versión estable del framework
Cuando se lanzó Symfony 4.0, SensioLabs afirmó que se trataba de la mejor versión del framework, con la llegada de Symfony 5 parece que esa versión podía mejorarse aún más. Porque, entre otras cosas, la última versión de Symfony incluye mejoras y solución de errores presentes en la anterior versión.
Symfony 4 vs Symfony 5
Si bien Symfony 5 es la versión estable más reciente, lo cierto es que junto a ella se liberó también Symfony 4.4. La razón de esta doble publicación no es otra que reemplazar la versión LTS dejando atrás la obsoleta 3.4; por aquello de la falta de actualización y como forma de evitar exponer a vulnerabilidades el código menos reciente.
Aunque ambas versiones son prácticamente iguales, exceptuando el hecho de que Symfony 5 no continua con todas las funcionalidades marcadas como obsoletas en la versión 4.4, esta estrategia permite al equipo de Symfony mantener dos versiones a la vez. Por un lado, pueden continuar desarrollando y mejorando Symfony 5; a la misma vez que ofrecen compatibilidad y mantenimiento de seguridad en las versiones menos recientes. De esta forma, los nuevos proyectos pueden iniciarse directamente en Symfony 5; mientras que hasta que aquellos que estén en Symfony 4.4 podrán disponer del tiempo necesario hasta que se actualicen por completo a la última versión estable del framework.
¿Qué se ha solucionado?
Puesto que toda actualización lleva consigo una mejora de las funcionalidades y la solución de errores o problemas de seguridad, Symfony 5 no iba a ser menos. Así, en la última versión de Symfony destaca:
- En las versiones anteriores a Symfony 5 existía un problema en el formulario que obligaba a validar cada una de las dependencias de forma independiente. Con la nueva versión, este bug queda solucionado para que también puedan llevarse a cabo validaciones de forma cruzada.
- Por defecto, los nombres de los botones no comenzaban con una letra mayúscula. A partir de Symfony 5 este problema deja de existir.
- Se ha actualizado el código de la fábrica de codificadores para añadir mayor seguridad a la aplicación.
- Surge un nuevo tipo de campo para formularios WeekType y se mejora la inyección de dependencias, las llamadas a dump() desde consola y también en el componente HttpClient.
- Se facilita la declaración de Event Listeners haciendo que ya no sea necesario especificar el tipo de evento en la configuración.
Las novedades de Symfony 5
- Aunque la incorporación del componente Mailer no es una novedad de la versión 5, sí lo son sus nuevas características. A partir de ahora es posible firmar y encriptar los correos para garantizar la integridad de los mensajes. Además, podrán validarse los emails enviados o acceder a un correo en concreto desde el servidor o el controlador.
- Se mejora la validación de algunos tipos, como por ejemplo una propiedad, indicando si el valor que se le ha dado cumple con los requisitos correspondientes.
- En Symfony 4.3 ya era posible validar el modelo a nivel de proyecto sin tener que indicar aserciones. Con Symfony 5 puede realizarse a nivel de clase o propiedad, lo que permite activar o desactivar esta opción sin que afecte al proyecto al completo.
- Para metodologías de integración continua se añade el comando lint:container que ayudará a comprobar que los argumentos sean los correctos.
- Sin necesidad de indicar la ruta, con la versión 5 de Symfony es posible revisar los archivos Twig a través del comando lint:container.
Es cierto que Symfony 5 no trae consigo tantas novedades como las de Symfony 4, pero es de gran ayuda a la hora de hacer más robusto el código que se crea. Algo que demuestra el compromiso del equipo de Symfony a la hora de ayudar a crear un ecosistema más funcional y seguro.