{"id":34272,"date":"2020-04-23T08:37:43","date_gmt":"2020-04-23T07:37:43","guid":{"rendered":"https:\/\/blog.jetbrains.com\/fr\/?p=649"},"modified":"2020-07-01T13:16:11","modified_gmt":"2020-07-01T13:16:11","slug":"publication-de-phpstorm-2020-1-prise-en-charge-native-de-composer-json-inference-de-type-amelioree-outils-phpunit-correcteur-grammatical-grazie-et-plus-encore","status":"publish","type":"post","link":"https:\/\/blog.jetbrains.com\/fr\/2020\/04\/23\/publication-de-phpstorm-2020-1-prise-en-charge-native-de-composer-json-inference-de-type-amelioree-outils-phpunit-correcteur-grammatical-grazie-et-plus-encore\/","title":{"rendered":"Publication de PhpStorm 2020.1\u00a0: prise en charge native de composer.json, inf\u00e9rence de type am\u00e9lior\u00e9e, outils PHPUnit, correcteur grammatical Grazie, et plus encore"},"content":{"rendered":"PhpStorm 2020.1 est disponible\u00a0!\r\n\r\n\r\n\r\nCette version majeure apporte la prise en charge native de composer.json, la couverture du code avec PCOV et PHPDBG, la bo\u00eete \u00e0 outils PHPUnit, de nouvelles inspections, des correctifs rapides, des refactorisations, un correcteur grammatical avanc\u00e9 et bien d'autres avantages.\r\n\r\n\r\nT\u00e9l\u00e9charger PhpStorm 2020.1\r\nSi vous ne disposez que de quelques minutes, regardez la vid\u00e9o What\u2019s New in 2020.1 ci-dessus pour avoir un aper\u00e7u des principales am\u00e9liorations. Si vous avez plus de temps, lisez la suite pour d\u00e9couvrir tous les changements et les choses \u00e0 savoir sur cette nouvelle version. Accrochez vos ceintures car nous avons une tonne de GIF pour vous\u00a0!\r\n\r\n&nbsp;\r\nPrise en charge directe de composer.json\r\nToutes les actions de gestion des d\u00e9pendances sont maintenant disponibles directement lorsque vous \u00e9ditez le fichier composer.json.\r\n\r\nVous pouvez cr\u00e9er un nouveau fichier composer.json \u00e0 partir du menu contextuel ou en appuyant sur Ctrl(\u2318)+N. Le mod\u00e8le de ce fichier se trouve dans Preferences\/Settings | Editor | File and Code Templates.\r\n\r\n\r\n\r\nAjouter un package en tant que d\u00e9pendance\r\nPour ajouter une d\u00e9pendance, il suffit de commencer \u00e0 taper le nom d'un fournisseur et d'un paquet et PhpStorm vous proposera les options appropri\u00e9es.\r\nLe champ version offrira les versions disponibles de ce paquet. Pour l'instant, vous devrez ajouter manuellement le caret ou les autres symboles pour la gamme de versions, mais cela \u00e9voluera dans les prochaines mises \u00e0 jour.\r\n\r\n\r\n\r\nLa saisie automatique fonctionnera \u00e9galement si vous devez sp\u00e9cifier la version de PHP et les extensions requises.\r\n\r\nDans la fen\u00eatre contextuelle des paquets, vous pouvez trouver des informations provenant de packagist.org sur le nombre de t\u00e9l\u00e9chargements et d'\u00e9toiles. Toutes les informations sur les paquets et leurs versions sont tir\u00e9es de packagist.org et mises en cache.\r\n\r\n\r\n\r\nInstaller et mettre \u00e0 jour les paquets\r\nS'il n'y a pas de fichier composer.lock et qu'aucun paquet n'est install\u00e9, PhpStorm mettra en \u00e9vidence les noms des sections require et require-dev. Vous pouvez cliquer sur le bouton Install dans la barre d'outils au-dessus de l'\u00e9diteur. Ou vous pouvez utiliser l'intention en appuyant sur Alt(\u2325)+Entr\u00e9e et en choisissant Install packages.\r\n\r\n\r\n\r\nEt si seuls certains des paquets sont t\u00e9l\u00e9charg\u00e9s, PhpStorm mettra en \u00e9vidence ceux qui n'ont pas encore \u00e9t\u00e9 install\u00e9s. En appuyant sur Alt(\u2325)+Entr\u00e9e sur ceux-ci, vous pouvez choisir Update package ou Update all packages.\r\n\r\nLa version du paquet actuellement install\u00e9e sera indiqu\u00e9e en gris \u00e0 c\u00f4t\u00e9 de la version requise.\r\n\r\nNaviguer vers les fichiers et dossiers\r\nVous savez probablement qu'avec Ctrl(\u2318)+Clic ou Ctrl(\u2318)+B vous pouvez aller \u00e0 la d\u00e9finition des entit\u00e9s ou rechercher des utilisations.\r\n\r\nCela fonctionnera aussi dans le composer.json. En faisant Ctrl(\u2318)+Clic sur un paquet, le dossier correspondant sera mis en \u00e9vidence dans l'arborescence du projet. Et s'il s'agit d'un fichier, alors il sera ouvert dans l'\u00e9diteur.\r\n\r\n\r\n\r\nCtrl(\u2318)+Clic ou Ctrl(\u2318)+B sur n'importe quel lien dans le composer.json l'ouvrira dans votre navigateur.\r\n\r\nSaisie automatique dans autoload(-dev)\r\nLa saisie automatique fonctionne pour les espaces de noms et les chemins d'acc\u00e8s aux dossiers en fonction des informations provenant des classes et de la structure des dossiers du projet.\r\n\r\n\r\n\r\nCtrl(\u2318)+Clic et Ctrl(\u2318)+B pour naviguer vers les fichiers et dossiers fonctionnent \u00e9galement ici.\r\n\r\nAm\u00e9liorations des scripts\r\nTout d'abord, la navigation vers les fichiers\/dossiers\/m\u00e9thodes fonctionne \u00e9galement. Deuxi\u00e8mement, les alias pour les commandes sont pris en charge. Et troisi\u00e8mement, les scripts peuvent \u00eatre lanc\u00e9s \u00e0 partir de l'\u00e9diteur en appuyant sur le bouton  pr\u00e8s du nom du script.\r\n\r\nCela cr\u00e9e automatiquement une configuration d'ex\u00e9cution. Vous pouvez donc relancer le script par un raccourci Ctrl(\u2303)+R, ce qui est tr\u00e8s pratique pour le d\u00e9bogage\u00a0:\r\n\r\n\r\n\r\nOutils de qualit\u00e9 du code\r\nS'il y a un FriendsOfPHP\/PHP-CS-Fixer dans les devDependencies, PhpStorm v\u00e9rifiera si l'inspection correspondante est activ\u00e9e et si le jeu de r\u00e8gles est d\u00e9fini. Si ce n'est pas le cas, vous pouvez appeler Alt(\u2325)+Entr\u00e9e pour le corriger\u00a0:\r\n\r\n\r\nAm\u00e9liorations apport\u00e9es \u00e0 l'inf\u00e9rence de type PHP\r\nLe moteur d'inf\u00e9rence de type est le c\u0153ur de PhpStorm et plusieurs changements notables y ont \u00e9t\u00e9 apport\u00e9s.\r\n\r\nMise en \u00e9vidence des balises @var redondantes\r\nL'ajout de balises @var est un bon moyen de sugg\u00e9rer \u00e0 PhpStorm le type de la variable. Mais comme nous am\u00e9liorons constamment l'inf\u00e9rence de type, certaines de ces d\u00e9clarations pourraient bien \u00eatre redondantes car PhpStorm conna\u00eet d\u00e9j\u00e0 le type. Ces cas seront mis en \u00e9vidence et pourront \u00eatre supprim\u00e9s en utilisant Alt(\u2325)+Entr\u00e9e et le correctif rapide \u201cRemove @var\u201d.\r\n\r\n\r\n\r\nLe suivi des types null est une t\u00e2che difficile et il y avait des endroits o\u00f9 PhpStorm ne fonctionnait pas. Dans la version 2020.1, PhpStorm sait quand une variable peut \u00eatre null ou non. Voici quelques exemples.\r\n\r\n\r\n\r\n\r\n\r\nSaisie automatique du code pour un tableau initialis\u00e9\r\nSupposons que vous ayez un tableau avec des \u00e9l\u00e9ments connus et que vous essayiez ensuite d'it\u00e9rer \u00e0 travers celui-ci. La saisie automatique du code ne fonctionnait pas ici auparavant car les informations sur le type \u00e9taient perdues. Maintenant, avec la version 2020.1, tout fonctionne.\r\n\r\n\r\n\r\nSaisie automatique du code dans array_map\/filter\r\nLa saisie automatique fonctionne d\u00e9sormais pour les \u00e9l\u00e9ments de tableau dans le corps des fermetures pass\u00e9es \u00e0 array_map() et array_filter().\r\n\r\n\r\nCouverture du code avec PCOV et PHPDBG\r\nVous pouvez obtenir un rapport de couverture du code en utilisant Xdebug. Mais comme il s'agit avant tout d'un d\u00e9bogueur, il entra\u00eene une surcharge importante. Pour acc\u00e9l\u00e9rer les rapports de couverture, vous pouvez utiliser des outils plus l\u00e9gers tels que l'extension krakjoe\/pcov ou PHPDBG qui est int\u00e9gr\u00e9 \u00e0 PHP 5.6 et ses versions ult\u00e9rieures.\r\n\r\nLes deux sont maintenant pris en charge dans PhpStorm. Vous devez cr\u00e9er une configuration d'ex\u00e9cution pour les tests et s\u00e9lectionner le pilote de couverture souhait\u00e9 dans les param\u00e8tres. Et ensuite effectuer des tests avec rapport de couverture en cliquant sur \u00a0:\r\n\r\n\r\nPour en savoir plus sur les diff\u00e9rences en mati\u00e8re de rapports de couverture entre Xdebug, PCOV et phpdbg, consultez le README de PCOV.\r\nBo\u00eete \u00e0 outils PHPUnit\r\nDans PHPUnit 9, de nombreuses fonctionnalit\u00e9s ont \u00e9t\u00e9 supprim\u00e9es ou d\u00e9clar\u00e9es obsol\u00e8tes. Pour acc\u00e9l\u00e9rer la migration et \u00e9viter les erreurs, nous avons ajout\u00e9 de nombreuses inspections et correctifs rapides.\r\n\r\n\r\n\r\nDe plus, vous pouvez maintenant cr\u00e9er un nouveau test pour une classe tr\u00e8s rapidement en appelant Alt(\u2325)+Entr\u00e9e sur la d\u00e9claration de la classe et en s\u00e9lectionnant Create New PHP Test.\r\n\r\n\r\nM\u00e9tadonn\u00e9es\r\nLes m\u00e9tadonn\u00e9es avanc\u00e9es vous permettent de fournir des informations suppl\u00e9mentaires sur votre projet \u00e0 PhpStorm et ainsi d'am\u00e9liorer la saisie automatique et les inspections du code. Cette fonctionnalit\u00e9 est notamment utilis\u00e9e dans le plugin Symfony et dans Laravel IDE Helper.\r\n\r\nPlusieurs am\u00e9liorations pour les m\u00e9tadonn\u00e9es ont \u00e9t\u00e9 ajout\u00e9es \u00e0 PhpStorm 2020.1.\r\n\r\nL'index des param\u00e8tres dans les directives override, map et type\r\nAuparavant, il \u00e9tait possible d'ajuster le comportement du premier argument des fonctions en utilisant override(), map(), et type(). Dans PhpStorm 2020.1, vous pouvez maintenant sp\u00e9cifier un index de param\u00e8tres arbitraire\u00a0:\r\n\r\n\r\n\r\nAcc\u00e8s aux propri\u00e9t\u00e9s via __get\r\nSi vous essayez d'acc\u00e9der aux propri\u00e9t\u00e9s avec le tour de magie __get(), les informations sur le type sont perdues. Vous pouviez utiliser des balises @var ou @property suppl\u00e9mentaires, mais cela ne fonctionnait pas toujours. Vous pouvez d\u00e9sormais tout sp\u00e9cifier gr\u00e2ce aux m\u00e9tadonn\u00e9es.\r\n\r\n\r\n\r\nSaisie automatique pour les cl\u00e9s des objets impl\u00e9mentant ArrayAccess\r\nLes m\u00e9tadonn\u00e9es prenaient en charge les objets ArrayAccess, mais ne sugg\u00e9raient que le type des valeurs. D\u00e9sormais, les cl\u00e9s disponibles peuvent \u00e9galement \u00eatre saisies automatiquement.\r\n\r\n\r\n\r\nPoints de sortie personnalis\u00e9s\r\nPhpStorm consid\u00e8re les fonctions telles que die() et exit() ou le lancement d'exceptions comme mettant fin \u00e0 l'ex\u00e9cution. Mais les applications peuvent avoir des points de sortie plus complexes, par exemple, un simple dd() ou un trigger_error() avec un argument E_USER_ERROR.\r\n\r\nDans PhpStorm 2020.1, vous pouvez marquer n'importe quelle fonction comme point de sortie et cela corrigera l'analyse du flux de contr\u00f4le en cons\u00e9quence.\r\n\r\n\r\n\r\nIc\u00f4nes pour les fonctions dont le comportement a \u00e9t\u00e9 modifi\u00e9 via les m\u00e9tadonn\u00e9es\r\nLes fonctions dont le comportement a \u00e9t\u00e9 modifi\u00e9 en utilisant override(), exitPoint(), ou expectArguments() auront d\u00e9sormais une ic\u00f4ne dans la goutti\u00e8re. Cliquer sur l'ic\u00f4ne ouvrira le fichier .phpstorm.meta.php o\u00f9 le comportement a \u00e9t\u00e9 modifi\u00e9.\r\n\r\n\r\n\r\nVous pouvez masquer ces ic\u00f4nes sous Preferences\/Settings | Editor | General | Gutter Icons.\r\nClassement assist\u00e9 par machine learning pour la saisie automatique du code\r\nLe classement des suggestions \u00e0 l'aide du machine learning permet de trier la liste des suggestions de mani\u00e8re plus optimale.\r\n\r\nComment voir le ML en action\u00a0? \r\nPar d\u00e9faut, le classement assist\u00e9 par ML est d\u00e9sactiv\u00e9. Nous ne voulons pas qu'il nous vole notre travail\u00a0! Pour l'activer, allez dans Preferences\/Settings | Editor | General | Code Completion et activez deux options\u00a0: Rank completion suggestions based on Machine Learning et PHP.\r\n\r\nSi vous activez l'option Show position changes in completion popup, la liste de saisie automatique indiquera comment l'ordre des \u00e9l\u00e9ments a chang\u00e9.\r\n\r\n\r\n\r\nNous pr\u00e9voyons d'emp\u00eacher l'IA de nous remplacer et de continuer \u00e0 travailler sur cette fonctionnalit\u00e9 dans les prochaines versions.\r\nNouvelles inspections\r\nUne propri\u00e9t\u00e9 priv\u00e9e peut \u00eatre remplac\u00e9e par une variable locale\r\nLa d\u00e9finition d'une propri\u00e9t\u00e9 sera mise en \u00e9vidence si elle n'est utilis\u00e9e que dans une seule m\u00e9thode et est imm\u00e9diatement \u00e9cras\u00e9e. Dans ce cas, vous pouvez appeler le correctif rapide Replace property with local variable avec Alt(\u2325)+Entr\u00e9e.\r\n\r\n\r\n\r\nInitialisation de propri\u00e9t\u00e9 inutile\r\nSupposons qu'une propri\u00e9t\u00e9 priv\u00e9e ait une valeur par d\u00e9faut dans une classe, mais qu'une autre valeur soit imm\u00e9diatement attribu\u00e9e \u00e0 la propri\u00e9t\u00e9 dans le constructeur. Dans ce cas, la valeur par d\u00e9faut est redondante et n'apporte rien.\r\n\r\nLes initialisations non utilis\u00e9es seront mises en \u00e9vidence et peuvent \u00eatre supprim\u00e9es en utilisant le correctif rapide Remove redundant initializer avec Alt(\u2325)+Entr\u00e9e .\r\n\r\n\r\n\r\nChanger le type de propri\u00e9t\u00e9 selon la valeur par d\u00e9faut dans PHP 7.4\r\n\r\n\r\nOp\u00e9rateurs ternaires redondants\r\nPhpstorm met en \u00e9vidence les expressions ternaires triviales que vous pouvez remplacer par des expressions plus simples \u00e0 l'aide du correctif rapide Alt(\u2325)+Entr\u00e9e.\r\n\r\n\r\n\r\nPass-by-ref excessifs\r\nL'utilisation d'un pass-by-ref peut avoir des cons\u00e9quences inattendues et c'est l'une des raisons pour lesquelles Nikita Popov sugg\u00e8re de permettre une annotation explicite pass-by-reference sur le site d'appel en PHP.\r\n\r\nEn attendant, PhpStorm 2020.1 mettra en \u00e9vidence les param\u00e8tres qui sont d\u00e9clar\u00e9s comme pass-by-ref mais qui ne sont pas utilis\u00e9s en tant que tels. Ils peuvent \u00eatre retir\u00e9s en toute s\u00e9curit\u00e9 \u00e0 l'aide d'un correctif rapide avec Alt(\u2325)+Entr\u00e9e.\r\n\r\n\r\n\r\nIl en sera de m\u00eame pour les tableaux avec un pass-by-ref dans des boucles foreach\u00a0:\r\n\r\n\r\n\r\nLa suppression d'un bloc PHPDoc inutile qui n'a que des d\u00e9clarations de type est maintenant facilit\u00e9e gr\u00e2ce \u00e0 un correctif rapide ad\u00e9quat.\r\n\r\n\r\n\r\nNotez que par d\u00e9faut, l'inspection est au niveau Info, ce qui signifie qu'elle ne mettra rien en \u00e9vidence. Si vous voulez que les blocs PHPDoc redondants soient mis en \u00e9vidence, d\u00e9finissez le niveau de gravit\u00e9 pour l'inspection Redundant PHPDoc comment sur Weak Warning ou plus haut dans Preferences\/Settings | Editor | Inspections.\r\nMise \u00e0 jour de la refactorisation Move method\r\nIl est parfois judicieux de transf\u00e9rer une m\u00e9thode \u00e0 une autre classe. Si cette m\u00e9thode est utilis\u00e9e plusieurs fois dans la base de code du projet, PhpStorm peut vous aider.\r\n\r\nAuparavant, il fallait d'abord rendre la m\u00e9thode statique, puis appeler une autre action pour d\u00e9placer une m\u00e9thode. Dans PhpStorm 2020.1, la refactorisation Move method a \u00e9t\u00e9 repens\u00e9e en une action simple. Les op\u00e9rations et les fen\u00eatres contextuelles inutiles ont \u00e9t\u00e9 supprim\u00e9es et tout se fait en une seule fois.\r\n\r\nPlacez le curseur sur la m\u00e9thode et appuyez sur F6 (ou Ctrl(\u2303)+T, 3). S\u00e9lectionnez ensuite une classe de destination et le tour est jou\u00e9.\r\n\r\n\r\nD\u00e9bogage PHP dans le client HTTP\r\nVous n'avez plus besoin de vous pr\u00e9occuper des param\u00e8tres ou d'installer l'extension dans votre navigateur pour commencer le d\u00e9bogage. Il vous suffit de cr\u00e9er une requ\u00eate HTTP dans un fichier .http et de l'ex\u00e9cuter en lan\u00e7ant la commande PHP Debug, disponible dans le menu Alt(\u2325)+Entr\u00e9e, ou en cliquant sur l'ic\u00f4ne de lecture . Un cookie XDEBUG_SESSION sera alors automatiquement ajout\u00e9 \u00e0 la requ\u00eate.\r\n\r\n\r\nEt encore quelques petites choses pour PHP\r\nLes \u00e9l\u00e9ments @deprecated sont affich\u00e9s barr\u00e9s dans l'arborescence de la structure.\r\nCtrl(\u2318)+F12\r\n\r\n\r\n\r\nMise en \u00e9vidence pour les balises correspondantes &lt;?php \/ ?&gt;\r\n\r\n\r\n\r\nPasser \u00e0 l'ouverture\/fermeture des crochets\r\nMaj+Ctrl+M (\u2303+M)\r\n\r\n\r\n\r\nPersonnalisation de l'analyseur lexical pour Twig\r\nParfois, il peut \u00eatre n\u00e9cessaire de changer les caract\u00e8res de la balise pour les mod\u00e8les Twig, par exemple si vous utilisez Angular, qui a la m\u00eame syntaxe.\r\nVous pouvez maintenant faire cela via Preferences\/Settings | Languages &amp; Frameworks | PHP | Twig.\r\nEDI\r\nV\u00e9rificateur orthographique et correcteur grammatical avanc\u00e9\r\nLe plugin Grazie est inclus nativement dans PhpStorm. Il v\u00e9rifie non seulement les fautes d'orthographe, mais aussi les erreurs de grammaire et de style. Grazie prend en charge 16 langues et toutes les v\u00e9rifications sont effectu\u00e9es localement, sans envoi de vos donn\u00e9es \u00e0 des tiers.\r\n\r\nLes v\u00e9rifications sont activ\u00e9es pour les fichiers texte par d\u00e9faut.\r\nVous pouvez \u00e9galement activer Grazie pour tous les litt\u00e9raux de cha\u00eenes, commentaires, blocs PHPDoc et messages de commit.\r\n\r\nPour PHP, vous pouvez activer Grazie dans le menu Settings\/Preferences | Editor | Proofreading | Grammar.\r\n\r\n\r\nMode LightEdit\r\nParfois, vous pouvez avoir besoin de consulter ou de corriger rapidement un fichier. Dans ce cas, ouvrir tout un EDI pour un seul fichier semble excessif, mais vous voulez quand m\u00eame utiliser la mise en \u00e9vidence et d'autres fonctionnalit\u00e9s auxquelles vous \u00eates habitu\u00e9. C'est pr\u00e9cis\u00e9ment pour cela que le mode LightEdit existe.\r\n\r\nVoici comment cela fonctionne : si vous ouvrez un fichier depuis la ligne de commande ou le menu contextuel du syst\u00e8me d'exploitation et que PhpStorm n'est pas en cours d'ex\u00e9cution, le fichier s'ouvrira dans LightEdit. Veuillez cependant noter que si une instance compl\u00e8te de PhpStorm est active, le fichier s'ouvrira simplement dans celle-ci.\r\n\r\n\r\nJetBrains Mono est maintenant la police par d\u00e9faut\r\n\r\nMode Zen\r\nCe mode combine les modes Distraction Free et Fullscreen, pour vous permettre de vous plonger totalement dans votre code et de rester concentr\u00e9.e.\r\nActivez-le sous View | Appearance | Enter Zen Mode.\r\n\r\n\r\nIU\r\nSessions de terminal fractionn\u00e9es\r\nAu lieu d'ouvrir de nouveaux onglets et de passer de l'un \u00e0 l'autre, vous pouvez d\u00e9sormais diviser la fen\u00eatre et ouvrir plusieurs sessions dans un seul onglet. Pour ce faire, s\u00e9lectionnez Split Horizontally \/ Vertically dans le menu contextuel.\r\n\r\n\r\nTh\u00e8me IntelliJ Light\r\nLe th\u00e8me clair a \u00e9t\u00e9 mis \u00e0 jour. Il est d\u00e9sormais unifi\u00e9 afin d'avoir la m\u00eame apparence sur tous les syst\u00e8mes d'exploitation et son nom a \u00e9t\u00e9 chang\u00e9 en IntelliJ Light.\r\nPersonnalisation de la barre d'\u00e9tat\r\nDans le menu contextuel, vous pouvez s\u00e9lectionner les informations \u00e0 afficher dans la barre d'\u00e9tat situ\u00e9e dans le coin inf\u00e9rieur droit de votre fen\u00eatre EDI.\r\n\r\n\r\nConfiguration\r\nConfiguration SSH unifi\u00e9e\r\nAuparavant, vous deviez reconfigurer votre connexion SSH chaque fois que vous la r\u00e9utilisiez dans le d\u00e9ploiement, les interpr\u00e8tes \u00e0 distance ou le terminal SSH.\r\n\r\nVous pouvez d\u00e9sormais ajouter ou modifier toutes les connexions SSH au m\u00eame endroit via Preferences\/Settings | Tools | SSH Configurations et les utiliser partout et aussi souvent que vous en avez besoin.\r\n\r\n\r\n\r\n\r\nLe chemin d'acc\u00e8s aux configurations de l'EDI a chang\u00e9\r\nPar exemple, sur macOS\u00a0:\r\n- ~\/Library\/Preferences\/PhpStorm2019.3\r\n+ ~\/Library\/Application Support\/JetBrains\/PhpStorm2020.1\r\nPour en savoir plus, consultez l'article d'aide.\r\nPlus de flexibilit\u00e9 lors du partage des configurations d'ex\u00e9cution\r\nAuparavant, les configurations d'ex\u00e9cution \u00e9taient stock\u00e9es dans le dossier .idea, que de nombreuses personnes ajoutent \u00e0 .gitignore dans son int\u00e9gralit\u00e9 (il existe cependant une meilleure alternative). Vous pouvez maintenant choisir n'importe quel endroit pour sauvegarder la configuration d'ex\u00e9cution et la partager avec vos coll\u00e8gues via votre VCS. Cela peut \u00eatre particuli\u00e8rement pratique lors de l'int\u00e9gration de nouveaux collaborateurs\u00a0: prenez le projet, ouvrez-le dans PhpStorm et lancez-le d'un simple clic.\r\n\r\nPour ce faire, s\u00e9lectionnez l'option Store as project file dans la fen\u00eatre Run\/Debug configuration, puis cliquez sur l'ic\u00f4ne engrenage pour s\u00e9lectionner le chemin souhait\u00e9 dans le projet.\r\n\r\n\r\nContr\u00f4le de version\r\nNouvelle fen\u00eatre d'outils Commit\r\nLa fen\u00eatre Commit est disponible en mode non-modal et s'affiche sur la gauche. De cette fa\u00e7on, vous pouvez toujours consulter et travailler sur d'autres fichiers pendant que le commit est en cours de pr\u00e9paration. Cela permet \u00e9galement d'afficher plus d'informations sur les modifications \u00e0 l'\u00e9cran.\r\n\r\nLa nouvelle fen\u00eatre d'outils Commit est activ\u00e9e par d\u00e9faut pour les nouveaux utilisateurs mais d\u00e9sactiv\u00e9e pour ceux qui avaient d\u00e9j\u00e0 install\u00e9 PhpStorm.\r\n\r\nVous pouvez l'activer avec l'option Use non-modal commit interface du menu Preferences \/ Settings | Version Control | Commit.\r\n\r\n\r\nAm\u00e9lioration du workflow des branches Git\r\nLa branche Git actuelle est indiqu\u00e9e dans le coin inf\u00e9rieur droit de la fen\u00eatre de l'EDI. Si vous cliquez dessus, la fen\u00eatre ouvrira le dialogue VCS | Git | Branches.\r\n\r\nNous avons ajout\u00e9 une barre de recherche \u00e0 cet endroit. Le bouton Refresh met \u00e0 jour la liste des branches distantes. Et nous avons ajout\u00e9 un indicateur pour chaque commit\u00a0: entrant (bleu) ou sortant (vert).\r\n\r\n\r\nInstallation de Git depuis l'EDI\r\nLorsque vous clonez un r\u00e9f\u00e9rentiel Git existant, PhpStorm recherche l'ex\u00e9cutable Git sur votre machine et vous propose de le t\u00e9l\u00e9charger et de le configurer pour vous si l'EDI ne le trouve pas.\r\nWorkflow interactif Rebase retravaill\u00e9\r\nGit Rebase vous permet de r\u00e9\u00e9crire l'historique des commits. Vous pouvez maintenant vous d\u00e9barrasser rapidement des commits temporaires, corriger un message ou r\u00e9organiser l'ordre des commits. Bien s\u00fbr, vous pouvez faire tout cela manuellement depuis le terminal, mais dans PhpStorm vous pouvez aussi voir le contenu du commit et des diffs.\r\n\r\nPour commencer, vous devez s\u00e9lectionner le commit de base souhait\u00e9 dans l'historique des commits. Ensuite, s\u00e9lectionnez Interactively rebase from here dans le menu contextuel.\r\n\r\n\r\nOutils de base de donn\u00e9es\r\nPhpStorm inclut nativement la quasi totalit\u00e9 des fonctionnalit\u00e9s de DataGrip. Vous pouvez consulter la page Nouveaut\u00e9s des outils de base de donn\u00e9es pour voir la pr\u00e9sentation de ces nouvelles fonctionnalit\u00e9s.\r\nWeb\r\nComme d'habitude, toutes les mises \u00e0 jour de WebStorm 2020.1 ont \u00e9galement \u00e9t\u00e9 int\u00e9gr\u00e9es dans PhpStorm.\r\n\r\nUne liste compl\u00e8te des modifications de cette version figure dans les notes de publication qui sont particuli\u00e8rement d\u00e9taill\u00e9es.\r\n\r\nC'est tout pour aujourd'hui. Merci de nous avoir lus jusqu'au bout ! Nous serons ravis de r\u00e9pondre \u00e0 vos questions et de recevoir vos suggestions, rapports de bugs et commentaires.\r\n\r\nPrenez soin de vous\u00a0!\r\nL'\u00c9quipe JetBrains PhpStorm\r\nThe Drive to Develop\r\n\r\nAuteur de l'article original en anglais :\u00a0Roman Pronskiy","protected":false},"excerpt":{"rendered":"PhpStorm 2020.1 est disponible\u00a0!Cette version majeure apporte la prise en charge native de composer.json, la couverture du code avec PCOV et PHPDBG, la bo\u00eete \u00e0 outils PHPUnit, de nouvelles ins","protected":false},"author":{"name":"Delphine Massenhove","link":"https:\/\/blog.jetbrains.com\/fr\/author\/delphine-massenhovejetbrains-com"},"featured_media":34273,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[907],"tags":[2583,2670,4679,2674,359],"cross-post-tag":[],"class_list":["post-34272","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-releases","tag-composer-json","tag-grazie","tag-inference-de-type","tag-metadata","tag-phpunit"],"acf":[],"featured_image":"https:\/\/blog.jetbrains.com\/wp-content\/uploads\/2020\/04\/fr-PhpStorm-2020.1.jpg","_links":{"self":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/posts\/34272","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/users\/813"},{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/users\/813"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/comments?post=34272"}],"version-history":[{"count":1,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/posts\/34272\/revisions"}],"predecessor-version":[{"id":52603,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/posts\/34272\/revisions\/52603"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media\/34273"}],"wp:attachment":[{"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/media?parent=34272"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/categories?post=34272"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/tags?post=34272"},{"taxonomy":"cross-post-tag","embeddable":true,"href":"https:\/\/blog.jetbrains.com\/fr\/wp-json\/wp\/v2\/cross-post-tag?post=34272"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}