944 063 154

Symfony 5, la última versión estable del framework

Publicado enDesarrollo y Programación en junio 10, 2020 10:00 am

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.