Novedades sobre el desarrollo de Symfony 1.3

El desarrollo de Symfony 1.3 continúa a buen ritmo, a pesar de que todavía quedan varios meses hasta su lanzamiento en noviembre de 2009. Durante las últimas semanas, se han incorporado cambios muy significativos para los desarrolladores:

1) La protección frente a los ataques XSS y CSRF ahora es obligatoria (changeset 17036)

Hasta ahora, al crear una nueva aplicación con la tarea generate:app, se podían indicar las opciones --escaping-strategy y --csrf-secret de forma opcional para mejorar la protección frente a los ataques XSS y CSRF.

A partir de Symfony 1.3, esta protección es obligatoria, ya que el valor por defecto de --escaping-strategy es on y si no se indica lo contrario, Symfony genera una cadena aleatoria para la opción --csrf-secret

2) Se elimina el filtro común (sfCommonFilter) (changeset 17794)

Symfony 1.3 elimina el filtro común, que es el encargado de añadir automáticamente las hojas de estilos y los archivos JavaScript en las páginas. Por lo tanto, a partir de ahora es obligatorio incluir a mano los CSS y JavaScript mediante los helpers include_stylesheets() y include_javascripts().

El filtro común se ha eliminado por los siguientes motivos:

  • El uso de los helpers es mejor, más sencilo y mucho más flexible
  • Aunque el filtro se puede deshabilitar, su funcionamiento es demasiado mágico y está demasiado escondido
  • Utilizar los helpers en los layouts permite tener un control más preciso sobre dónde se añaden (por ejemplo los CSS en la cabecera de la página y los JavaScript justo al final del <body>)
  • Casi siempre es mejor ser explícito y no implícito (menos magia y más control)
  • Mejora ligeramente el rendimiento

La tarea project:upgrade1.3 actualizará los proyectos a Symfony 1.3 eliminando el filtro común y actualizando los layouts que se encuentren en directorios llamados templates/ (los demás los tienes que actualizar a mano).

3) Eliminadas las tareas project:freeze y project:unfreeze (changeset 17795)

Symfony 1.3 elimina dos tareas muy utilizadas por los desarrolladores para subir sus aplicaciones a los servidores de producción. Las tareas project:freeze y project:unfreeze se encargan de convertir los proyectos en autosuficientes, incluyendo todos los archivos de Symfony en el propio proyecto.

Las tareas se eliminan porque hace tiempo que esta forma de trabajar no es la recomendada. De hecho, la recomendación actual es incluir siempre Symfony en el propio proyecto, tal y como se instala en el tutorial Jobeet. Además, el uso de la clase ProjectConfiguration.class.php permite cambiar de una versión Symfony a otra fácilmente.

4) Elementos obsoletos de Symfony 1.0 (changeset 17798)

Symfony 1.3 ha declarado obsoletos todos los alias de las tareas de Symfony 1.0 y también el plugin que activa la compatibilidad con Symfony 1.0 (sfCompat10Plugin).

Estos elementos se eliminarán en Symfony 1.4.

Comentarios

  1. […] Novedades sobre el desarrollo de Symfony 1.3 […]

    tuProgramador.com el 12 de mayo de 2009, 14:56:30

Este artículo ya no permite añadir más comentarios.
¿Por qué? Los artículos cierran sus comentarios automáticamente unos meses después de su publicación para asegurar que estos sigan siendo relevantes.

Publicada el

6 de mayo de 2009

Etiquetas

Proyectos Symfony destacados

La plataforma de eCommerce 100% Symfony que rivaliza con Magento y PrestaShop. Ver más

Síguenos en @symfony_es para acceder a las últimas noticias.