Symfony abandona el proyecto PHP-FIG

Fabien Potencier, líder del proyecto Symfony, acaba de solicitar (mediante este pull request) la retirada de Symfony del proyecto PHP-FIG.

¿Qué es PHP-FIG?

PHP-FIG, PHP Framework Interop Group, nació en 2009 de la unión de los frameworks y proyectos PHP más importantes (como Symfony, Drupal, Laravel, etc.) Su propósito inicial era estandarizar soluciones para las necesidades más comunes de las aplicaciones PHP.

Por ejemplo, gracias a los estándares PSR-0 y PSR-4, todas las aplicaciones PHP cargan sus clases de la misma manera. Gracias a los estándares PSR-1 y PSR-2, muchas aplicaciones usan el mismo formato para escribir PHP.

¿Por qué se retira Symfony?

Fabien ha explicado algunas de sus razones en este hilo de Twitter. El problema, a juicio del proyecto Symfony, es que PHP-FIG se ha desviado de su propósito inicial. En vez de estandarizar las soluciones existentes, PHP-FIG se está dedicando últimamente a fabricar estándares nuevos y totalmente incompatibles con el mercado actual.

El ejemplo más claro ha sido el estándar PSR-7. En vez de utilizar como base el componente HttpFoundation de Symfony, que es usado y conocido por cientos de miles de programadores, decidieron crear algo completamente nuevo.

El resultado es que ningún proyecto popular de PHP utiliza PSR-7. Laravel, Drupal, Symfony y muchos otros proyectos populares siguen usando HttpFoundation. Mientras que el uso de PSR-7 es residual (Slim, Guzzle y algunas herramientas de Zend).

Sin embargo, el hecho que ha precipitado esta decisión ha sido el estándar aún sin publicar PSR-14. En vez de estandarizar el componente EventDispatcher (utilizado en infinidad de aplicaciones y con más de 110 millones de descargas) PHP-FIG ha decidido crear algo totalmente nuevo e incompatible (tomando además decisiones controvertidas como renombrar Event a Task).

Por todo esto, y tras deliberar sobre el tema en el grupo de discusión del "Core Team" de Symfony, hemos decidido que lo mejor es que Symfony abandone el proyecto PHP-FIG.

¿Seguirá Symfony implementando estándares PSR?

Si. En primer lugar, no cambiaremos ninguno de los estándares PSR ya implementados en Symfony. Sobre los futuros PSR, implementaremos aquellos que consideremos adecuados, sin la presión de tener que implementarlos por pertenecer al PHP-FIG.

Si estás pensando que esto empeorará el proyecto Symfony y lo hará menos incompatible, recuerda que los proyectos más importantes de PHP (WordPress, Laravel, Doctrine, Symfony) no pertenecen a PHP-FIG. Además, casi todos los proyectos PHP importantes usan algún componente de Symfony, así que hay una estandarización muy clara en el ecosistema PHP.

Comentarios

Publicada el

21 de noviembre de 2018

Etiquetas

Proyectos Symfony destacados

La forma más sencilla de generar el backend de tus aplicaciones Symfony. Ver más

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