quarto-dev / quarto-dev/quarto-cli

YAML error messages are inconsistent across format boundaries

Ouverte
#369 2 commentaires 0 réactions 1 personne assignée Voir sur GitHub

@cscheid y travaille déjà.

Depuis le 28/2/2022.

enhancement yaml-validation
Langage dominant
JavaScript
Étoiles
6k
Forks
458
Merge moyen
1 j 9 h
PR mergées (30 j)
41

Description

When reporting an error message of a validation failure, we use information that belongs to a "different format".

Because we were working hard to minimize the number of total schemas (given the compile-time and file-size constraints we had with AJV), we decided on tagging fields with the formats they're enabled, but not the schemas. As a result, schemas tend to be not exactly what users expect, and this interacts badly with validation.

If someone makes a typo on an object key, it's possible that they will accidentally land on a field that is:

  1. disabled for the format they're rendering on
  2. but has a schema that is wildly different than what they're expecting

Because of 1), they get no completions to warn them of the typo they just introduced, and are unlikely to realize that the lack of completions is indicative of the typo. Because of 2), our validation infrastructure will yell at them.

The outcome of all of this are Dreaded Misleading Validation Errors.

This kind of problem will become more important the more we lean on validation/autocompletion as the teaching mechanism for users.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.