Ast

Dev back

Rector 0.18 - Refocus on PHP

La version 0.18 de Rector met l'accent sur le traitement exclusif des fichiers PHP et abandonne certaines fonctionnalités peu connues pour les fichiers non-PHP. Cette mise à jour vise à clarifier le fonctionnement de Rector, qui, comme d'autres outils tels que PHPStan et PHPUnit, est conçu principalement pour le code PHP. La version précédente, 0.17.3, a supprimé des fonctionnalités obsolètes, avec une orientation vers un outil autonome gérant uniquement le code PHP, ce qui permettrait d'éviter des transformations inattendues pour les classes PHP.

Dev back

Rector 0.17 - Using Scoped Traverse to Locate Specific Node

La version 0.17 de Rector ne prend plus en charge la recherche de nœuds parents. Il est maintenant nécessaire de traverser de nœud parent à nœud enfant pour localiser des nœuds spécifiques, en ignorant ceux dans des classes anonymes, des fonctions internes ou des closures. Deux méthodes peuvent être utilisées : le 'Scoped Node Finder' qui permet de trouver des nœuds d'un type spécifique tout en évitant ces structures, et la méthode de traversée de nœuds pour remplacer des nœuds de manière sécurisée.

Dev back

Introducing Play with AST page

Le nouvel outil 'Play with AST' proposé par getrector.com permet aux utilisateurs d'explorer la structure AST d'un code source PHP de manière interactive. Même pour les utilisateurs expérimentés, cet outil facilitera la création de nouvelles règles Rector ou la refactorisation de code existant. Il est possible d'insérer du code PHP et d'obtenir la structure AST complète ou partielle, ce qui aide à mieux comprendre les types de nœuds disponibles pour la création de règles personnalisées.

Dev back

Introducing Rule Finder

Rector a introduit un nouvel outil de recherche de règles, le 'Rule Finder'. Cet outil permet de trouver des règles spécifiques parmi plus de 535 disponibles dans quatre dépôts. Les utilisateurs peuvent affiner leur recherche par nom, description, nœud, ou ensemble de règles. Ceci facilite l'accès aux règles sans avoir à parcourir plusieurs fichiers markdown, rendant l'apprentissage de Rector et l'utilisation de l'AST plus agréables. Des ensembles communautaires comme Laravel et Drupal sont prévus pour l'avenir.

Dev back

Improving Rector Performance by 20-30 %

Cet article décrit une optimisation apportée à Rector, qui a permis d'augmenter sa performance de 20 à 30%. L'auteur explique comment une approche ciblée sur les noeuds AST a réduit le besoin de vérifications inutiles, entraînant une exécution plus rapide et une réduction de l'empreinte carbone associée. Des conseils sont également fournis sur l'optimisation du code, soulignant l'importance de se concentrer sur les parties du code exécutées fréquemment pour maximiser les gains de performance.