Aller au contenu

Diagnostics

Les diagnostics de Biome sont remplis d’informations et fournissent habituellement toutes les informations dont vous avez besoin pour comprendre les erreurs et les corriger.

Les diagnostics sont utilisés non seulement pour les erreurs, mais aussi pour fournir des informations structurées, des avertissements et des tuyaux.

Cette page fournit un aperçu de toutes les informations qu’un diagnostic peut comporter. Apprendre toutes les différentes parties d’un diagnostic peut vous aider à identifier les parties importantes et certains « secrets » qui se cachent derrière.

La sévérité du diagnostic peut affecter la ligne de commande. Par exemple, les diagnostics d’erreur forceront la ligne de commande à quitter avec un code d’erreur.

Le texte des diagnostics d’erreur est en rouge. Les diagnostics fatals sont habituellement émis quand une erreur inattendue s’est produite au sein de Biome. Comparés aux erreurs, ils ont le tag fatal.


 FATAL  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  
   Biome exited as this error could not be handled and resulted in a fatal error. Please report it if necessary.
  

Le texte des diagnostics d’erreur est en rouge. Habituellement, ils devraient être abordés parce qu’ils émettront un code d’erreur lorsque la ligne de commande les rencontre.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

Le texte des diagnostics d’avertissement est en jaune. Habituellement, ils devraient être abordés. Les avertissements ne sont pas bloquants et la ligne de commande ne cessera pas de travailler.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

Le texte des diagnostics d’information est en vert. Ils fournissent des informations utiles et ne sont pas censés bloquer la ligne de commande.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

Les tags peuvent être vus comme des métadonnées rattachées à un diagnostic et peuvent affecter les clients de différentes manières.

Les diagnostics verbeux (verbose) sont habituellement cachés. Via la ligne de commande, vous pouvez afficher ces diagnostics en utilisant l’option --verbose.


 VERBOSE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

Les diagnostics internes (internal) sont émis quand une erreur interne s’est produite. Les utilisateurs sont habituellement encouragés à envoyer un rapport de bug quand ils en voient un.


 INTERNAL  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  
   This diagnostic was derived from an internal Biome error. Potential bug, please report it if necessary.
  

Les diagnostics corrigibles (fixable) sont émis pour ces situations particulières qui peuvent être corrigées par l’utilisateur. Ils sont habituellement utilisés pour les diagnostics de linting qui ont une action de code.


 FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

Les diagnostics qui comportent du code qui est obsolète.


 DEPRECATED  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

La catégorie est utile aux diagnostics de groupe. De façon facultative, une catégorie peut avoir un lien, par exemple pour les catégories appartenant aux règles de linting, comme dans l’exemple ci-dessous.

Ce diagnostic appartient à la catégorie « check », ce qui veut dire qu’il est émis à l’exécution de la commande check :


check ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

Ce diagnostic appartient à la catégorie « lint/a11y/noAccessKey ». Le lien mène l’utilisateur vers la page web de la règle de linting noAccessKey.


lint/a11y/noAccessKey ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

Les diagnostics peuvent avoir une « localisation ». Une localisation est composée de trois parties facultatives :

  • une ressource, qui est à l’origine de l’émission du diagnostic ;
  • le code source du fichier ;
  • une portée (ou un échantillon de texte), habituellement la ligne et la colonne dans le fichier.

Le chemin du fichier est habituellement la première information que vous voyez, en haut à gauche du diagnostic.


path/to/file.js ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  

Cela montre la manière dont le code source associé au fichier est affiché. Notez que la ligne et la colonne ne sont pas affichées.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  
  > 1 │ Some source code
        ^^^^^
  

Les ligne et colonne sont habituellement affichées à côté du chemin du fichier et ne le sont que s’il y a du code source qui leur est associé.


path/to/file.txt:1:6 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  
  > 1 │ Some source code
        ^^^^^^
  

Quand les diagnostics sont affichés au sein du terminal d’un IDE, vous pouvez cliquer sur chemin/vers/le/fichier.js:2:2 et l’IDE ouvrira le fichier en question et placera le curseur au début de la portée.


path/to/file.js:2:2 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  
    1 │ function name() {
  > 2 │ 	return 'lorem'
   	^^^^^^^^^^^^^^
    3 │ }
  

En outre, nos diagnostics peuvent contenir des conseils. Les conseils sont des messages qui peuvent être ajoutés au message originel.

Ces conseils sont de différents types et formes. Habituellement, les conseils sont toujours affichés, à moins d’être de type verbose.


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

   This diagnostic message is displayed in a color that reflects its severity.
  
   An error message.
  
   A warning message.
  
   An informational message.
  
  An unstyled message can introduce a command:
  
  $ biome command
  
  Messages can be grouped under a heading:
  
  Related information
  
     First message of a group.
    
     Second message of a group.
    
  Messages can also be displayed as a list:
  
  - First item
  - Second item
  
  A diff can show a suggested change:
  
  - Old·code
  + New·code
  
  A code frame can highlight a source range:
  
  > 1 │ Lorem
   ^^^
    2 │ Ipsum