Ce qu’il faut retenir de Symfony 5.2
Symfony 5.2 est une nouvelle évolution mineure de Symfony sortie en novembre 2020. Elle intègre au framework de nombreuses fonctionnalités récentes très utiles. Petit tour d’horizon des principales nouveautés à retenir.
Symfony 5.2 a été publié en novembre 2020, intégrant de nombreuses nouvelles fonctionnalités utiles au framework. Voici un bref aperçu des meilleures nouvelles fonctionnalités à retenir.
Peu de temps après son 15e anniversaire, Symfony a publié sa nouvelle version : Symfony 5.2.0. L'équipe principale de Symfony et toute la communauté Symfony continuent d'améliorer le framework selon la feuille de route Symfony. Cette nouvelle version mineure de Symfony comprend de nombreuses nouvelles fonctionnalités utiles.
Comme Nicolas Grekas nous l'a expliqué dans son interview sur Symfony 5, un grand nombre de nouvelles fonctionnalités apparaissent à chaque évolution majeure ou mineure du framework. Certaines versions mineures peuvent également introduire des fonctionnalités substantielles.
Les principales nouvelles fonctionnalités de Symfony 5.2
Explorons les principales fonctionnalités qui ont retenu notre attention :
Vraies couleurs dans la console
La composante Console de Symfony fournit un style par défaut pour la sortie de vos commandes, mais vous pouvez également appliquer des styles et couleurs personnalisés. Symfony 5.2 améliore cette fonctionnalité car il prend en charge les couleurs 24 bits. Au total, vous disposez désormais de plus de 16 millions de couleurs différentes pour obtenir toutes les couleurs de l'arc-en-ciel dans vos contrôles de console.
Attributs PHP 8
PHP 8 est un grand changement avec de nouvelles fonctionnalités de base comme les attributs intégrés, également connus sous le nom de annotations. Symfony 5.2 intègre le support des attributs PHP 8 pour définir les routes et dépendances requises. Si vous utilisez déjà des annotations, la transition sera fluide.
PHP entre dans un nouvel âge d'or avec la sortie de PHP 8, et Symfony est entièrement compatible. Ces attributs ne sont que le début, car de nouveaux sont prévus bientôt pour tirer pleinement parti des nouvelles fonctionnalités de PHP 8.
Limiteur de débit
Un limiteur de débit contrôle la fréquence à laquelle un événement (par exemple, une requête HTTP ou une tentative de connexion) est autorisé à se produire. Vous pouvez utiliser la limitation de débit comme une mesure défensive pour protéger les services d'une utilisation excessive. Symfony 5.2 introduit une nouvelle composante RateLimiter pour ajouter ces protections à vos applications.
Comment les développeurs de SensioLabs ont contribué
Nous sommes fiers d'annoncer que quelques développeurs du département technique de SensioLabs ont participé à cette nouvelle version mineure de Symfony. Deux contributions clés sont venues des développeurs de SensioLabs : Simple DataCollectors et Session Profiling par Laurent Voullemier et Mathias Arlaud.
DataCollectors simplifiés
L'introduction d'une nouvelle classe AbstractDataCollectors simplifie la création de collecteurs de données personnalisés dans Symfony 5.2. Désormais, le framework enregistre automatiquement ce collecteur de données et l'utilise à partir de la prochaine requête. Vous n'avez plus besoin d'enregistrer les services manuellement.
Profiling de la session
Le profilage de la session est une grande amélioration dans Symfony 5.2. Grâce à cela, vous pouvez afficher toutes les informations liées à la session de requête actuelle dans la barre d'outils de débogage. De plus, le profileur propose désormais une nouvelle section appelée "Session" dans le panneau demande/réponse. Il affiche également les métadonnées de session (par exemple, la date de création, la durée de vie, etc.), les noms et les valeurs des attributs de session, et tous les détails sur le déroulement de la session.
Félicitations à eux pour leurs contributions ! De nombreux développeurs de SensioLabs contribuent régulièrement à Symfony : en tant que créateur de Symfony, SensioLabs reste bien sûr très proche du framework et encourage les contributions des développeurs de son équipe.