06/01/2014

Symfony 2.4 : nouveau composant, Expression Language, et autres nouveautés

Une nouvelle version du framework open source édité par SensioLabs est sortie en décembre. Le point sur l'essentiel des nouvelles fonctionnalités.

La fonctionnalité-clé de cette version est la mise en place de l’Expression Language, qui permet d’évaluer des règles : très utile pour définir des règles de gestion d’accès, des politiques de cache, des règles de routing, de la validation de données ou un moteur de règle business (gestion de promotions, règle de livraisons…).

En outre, Symfony 2.4 apporte de nombreuses nouveautés dans les composants suivants :

Firewall and Security

  • Simplification de la mise en place de l’authentification simple
  • Gestion du hostname dans le Firewall

Twig

  • Chronomètre/Stopwatch pour l’affichage dans Twig via une fonction dédiée

Debug

  • Amélioration de la gestion des erreurs pour l’utilisation de classes ou de fonctions manquantes.
  • Ajout du Referrer dans le message d’exception NotFoundHttpException (erreur 404)
  • Accès rapide au profiler quand on travaille sur une API

DomCrawler

  • Support des formulaires en HTML 5
  • Schema-relative URL
  • Auto Découverte des namespaces avec DomCrawler

Console

  • Possibilité d’afficher les logs dans la console
  • Affichage compact pour le TableHelper, gestion sémantique de la verbosité
  • Possibilité de définir la dimension du terminal
  • Meilleure intégration de la console avec des outils tiers

HttpFoundation

  • Définition de constantes pour les codes HTTP
  • Possibilité de temporiser les écritures des metadata de session
  • Accès à la request Stack et possibilité de remonter à la master request dans le cas d’une sub-request

Config

  • Affichage de la configuration par défaut pour une extension dans différents formats : yml et xml

Process

  • Limiter dans le temps l’exécution d’un processus
  • Possibilité de purger stdout et stderr dans le cas d’une sortie incrémentale

Form

  • Un très utile écran de débug pour les formulaires

Validator

  • Simplification des callbacks de contrainte, utile pour la validation de données par exemple
  • Amélioration de la validation des images : ratio de l’image, format de l’image.

Même si la version 2.4 est entièrement rétro-compatible avec la version 2.3 (Long Term Support), de nombreux projets ne migreront pas vers cette nouvelle version afin de continuer à bénéficier du support long terme.

Par ailleurs, la version 2.4.1 apporte de nombreuses corrections.

Actualités