IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Membre éprouvé

    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2018
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2018
    Messages : 1 548
    Par défaut Prettier 2.0 est disponible avec le support pour Typescript 3.8, des améliorations de CLI et autres
    La version 2.0 de Prettier, le formateur de code, est disponible avec le support pour Typescript 3.8, des améliorations de CLI,
    De meilleures valeurs par défaut et autres

    Le formateur de code Prettier a récemment publié sa deuxième grande itération, selon un article de blog publié samedi dernier. Prettier 2.0 ajoute la prise en charge de TypeScript 3.8 et fournit de meilleures valeurs par défaut. L’équipe derrière le formateur de code dit avoir décidé de changer les valeurs par défaut des options trailingComma, arrowParens et endOfLine, après une longue et minutieuse réflexion. Prettier 2.0 apporte également une meilleure CLI et des améliorations des heuristiques. Prettier est un formateur de code qui supprime le style original et s'assure que le code produit est conforme à un style cohérent.

    Support pour Typescript 3.8

    Selon l’article de blog, la version 2.0 de Prettier prend désormais en charge la nouvelle syntaxe incluse dans la version 3.8 de TypeScript, couvrant les importations et exportations de type uniquement, les champs privés ECMAScript et la syntaxe export * as ns. La nouvelle syntaxe TypeScript d'importation et d'exportation de type uniquement permet aux développeurs d'importer des déclarations à utiliser pour les annotations et les déclarations de type :

    Nom : EC01.png
Affichages : 7577
Taille : 8,0 Ko

    TypeScript 3.8 prend désormais en charge la proposition de champs privés ECMAScript, qui fait partie de la proposition de champs de classe de stade 3. Les champs privés sont des champs dont l'identifiant est précédé d'un # dans une définition de classe ; les modificateurs d'accessibilité TypeScript comme public ou private ne peuvent pas être utilisés sur des champs privés, entre autres :

    Nom : EC02.png
Affichages : 2126
Taille : 7,1 Ko

    La toute dernière version stable de Prettier a en outre corrigé plusieurs cas de formatage liés à TypeScript, impliquant des types complexes, des commentaires et autres, selon l’article de blog. La prise en charge améliorée de la syntaxe TypeScript est bien accueillie par les développeurs. Un utilisateur de Twitter, par exemple, a déclaré : « C'est incroyable quand les choses s'alignent sur votre travail . Comme ce vendredi, nous discutions de la date de mise à jour de Prettier vers TypeScript 3.8 et vous voilà . Impressionnant ».

    Nom : TW01.png
Affichages : 2639
Taille : 57,9 Ko

    De meilleures valeurs par défaut

    Prettier 2.0 a modifié les valeurs par défaut des options trailingComma, arrowParens et endOfLine, d’après le post de l’équipe Prettier. Avec Prettier 2.0, les virgules de fin de ligne deviennent la valeur par défaut, comme le permet l'ECMAScript 5. L'ancienne valeur par défaut était motivée par le désir de conserver la compatibilité jusqu'aux navigateurs IE8, selon le post. Toutefois, la nouvelle valeur par défaut peut être rétablie en configurant Prettier avec {"trailingComma" : "none" }.

    La valeur par défaut de l'option de configuration Prettier arrowParens est désormais par défaut always. Les modifications de formatage qui en résultent sont les suivantes :

    Nom : EC03.png
Affichages : 2087
Taille : 13,0 Ko

    Ce changement apparemment mineur est destiné à mieux servir les développeurs TypeScript, car l'encapsulation des paramètres de la fonction fléchée facilite l'ajout d'annotations de type. En outre, la parenthèse d'encapsulation couvre de nombreux autres modèles fréquents résumés dans le post d’un utilisateur de Twitter comme suit :

    Nom : TW02.png
Affichages : 2117
Taille : 83,2 Ko

    L'option de configuration Prettier endOfLine est maintenant réglée par défaut sur lf. Avec la valeur par défaut précédente, Prettier préserve la valeur des fins de ligne déjà présentes dans un fichier donné. Dans les dépôts git avec des contributeurs sur différents systèmes d'exploitation, cela conduisait dans certains cas à des différences de résultats importantes et rendait l'historique ligne par ligne d'un fichier plus difficile à explorer.

    Améliorations de Prettier CLI

    Selon le post, la CLI (interface en ligne de commande) de Prettier 2.0 s’efforce maintenant de traiter les modèles globs comme des noms de fichiers littéraux avant de les traiter comme des globs. Le changement vise à résoudre les divergences entre les noms de fichiers Windows et Linux, ce dernier pouvant contenir presque n'importe quel caractère.

    En outre, il est enfin possible d'exécuter prettier --write . pour formater tous les fichiers supportés dans le répertoire courant et ses sous-répertoires. Selon l’équipe Prettier, les noms de répertoires peuvent être mélangés avec les noms de fichiers et les modèles globs (par exemple, prettier src "test/*.spec.js" foo.js).

    De plus, l'ordre dans lequel les fichiers sont traités a changé. Selon le post, auparavant, tous les fichiers étaient triés par ordre alphabétique avant le formatage. Maintenant, leur ordre correspond à l'ordre des chemins d'accès spécifiés. Pour chaque chemin, la liste des fichiers résolus est triée, mais le tri complet de la liste combinée qui en résulte n'est plus effectué, lit-on.

    Il y a également des changements dans la façon dont Prettier CLI signale les erreurs si les modèles transmis ne correspondent à aucun fichier. Auparavant, Prettier CLI imprimait une erreur "No matching files" si elle ne trouvait aucun fichier - pour tous les modèles ensemble, et non pour un modèle individuel. Dans Prettier 2.0, la CLI imprime également de telles erreurs pour des modèles individuels.

    Améliorations des heuristiques

    Auparavant, toute chaîne d'appel de méthode d'une longueur de trois ou plus était automatiquement divisée en plusieurs lignes. Prettier 2.0 inclut des heuristiques améliorées pour briser les chaînes de méthodes. La nouvelle heuristique est basée sur la complexité des arguments d'appel dans la chaîne, plutôt que simplement sur la longueur de la chaîne. Désormais, si les appels de méthode en chaîne ont des arguments qui ne sont pas faciles à comprendre d'un seul coup d'œil (par exemple des fonctions ou des objets profondément imbriqués), la chaîne est rompue. Le code suivant est formaté avec Prettier 1.19 :

    Nom : EC04.png
Affichages : 2085
Taille : 10,9 Ko

    Il est maintenant formaté avec Prettier 2.0 comme suit :

    Nom : EC05.png
Affichages : 2095
Taille : 7,5 Ko

    De plus, Prettier a amélioré sa gestion heuristique du traitement de type JSDoc. Comme TypeScript peut utiliser les types JSDoc pour les informations de type (par exemple lorsqu'il est exécuté avec l'option --checkJs), le reformatage de JSDoc a parfois conduit à des rapports de bogue. La nouvelle heuristique se comporte comme suit :

    Nom : EC06.png
Affichages : 2070
Taille : 37,6 Ko

    En plus des changements énumérés ci-dessus, le nouveau Prettier est également accompagné d'une série de changements améliorant son traitement de divers formats de fichiers, comme Flow, CSS, Vue, Angular, GraphQL, Markdown, et plus encore.

    Source : Prettier

    Et vous ?

    Qu’en pensez-vous ?
    Quels changements retiennent votre attention dans Prettier 2.0 ?

    Lire aussi

    TypeScript 3.8 RC apporte une nouvelle syntaxe pour l'importation/exportation de types uniquement, ainsi que les champs privés ECMAScript
    TypeScript 2.8 est disponible et s'accompagne des types conditionnels, ainsi que du contrôle granulaire sur les modificateurs de type mappés

  2. #2
    Membre très actif

    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    506
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 506
    Par défaut Prettier
    Aucun changement ne retient mon attention.
    Et le standard exact n'a pas d'importance.
    Ce qui compte c'est qu'il y ait un standard et que toute l'équipe s'y conforme.
    Et pour cela prettier c'est génial.
    J'avais notamment un dev qui adorait remettre sur une seule ligne ce qui devait en prendre trois ou quatre...
    Avec prettier c'est fini :-)

Discussions similaires

  1. Réponses: 0
    Dernier message: 03/09/2018, 15h33
  2. Réponses: 9
    Dernier message: 20/05/2018, 17h38
  3. Réponses: 8
    Dernier message: 21/01/2016, 23h31
  4. Réponses: 52
    Dernier message: 28/06/2012, 16h36
  5. Réponses: 0
    Dernier message: 25/01/2011, 10h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo