Relecture de configuration

Comparateur YAMLDistinguer les données du texte modifié

Comparez des flux YAML 1.2 par leur structure ou examinez leur texte original.

Comparateur YAML

Avant

Après

Les deux entrées sont traitées dans ce navigateur ; leur contenu n’est pas envoyé à un serveur.

Exemple : ["/0/metadata/time"]. /0 désigne le premier document ; /0/ sa clé vide. ~0 représente ~, ~1 représente /. Les sous-arbres exclus disparaissent des comptes et rapports structurels ; les indices restent fixes. Le texte n’est pas filtré.

YAML 1.2 core + balises timestamp/binary explicites. L’ordre des clés est ignoré ; documents et listes sont associés par indice. Entiers et flottants diffèrent. Les horodatages se comparent selon leur écriture, pas leur instant.

Par côté : 200 000 caractères / 800 000 octets UTF-8 ; 100 documents, 50 000 nœuds développés, profondeur 100, 5 000 entrées ancre/alias au total. Maximum : 5 000 modifications, 1 million de caractères de chemins et 4 millions de caractères de rapport. Worker : 5 s. Texte : 500 ms, distance d’édition 2 000, 50 000 jetons.

Saisissez les configurations ou lancez la comparaison.

Modifications

Le comparateur YAML permet de vérifier si un changement de guillemets a modifié un type, ou si une longue réorganisation ne touche que la présentation. La vue structure répond à la première question ; le texte original explique la seconde.

Pour comparer YAML avant une livraison, chaque document du flux compte. Cette comparaison YAML associe les positions sans deviner l’identité des ressources. Le diff YAML conserve aussi une vue du fichier tel qu’il a été écrit.

Pourquoi utiliser ce comparateur YAML ?

Un contrôle des données et une relecture du fichier

Retrouver le changement de type

Le comparateur YAML différencie un entier, un flottant et une chaîne même si leur affichage semble proche. Il parcourt tous les documents dans leur ordre ; un document supplémentaire ne passe pas inaperçu derrière le premier.

Deux piles de documents sont reliées selon leur position ; une valeur modifiée et un document sans correspondant sont mis en évidence.

Garder la trace des retouches éditoriales

Une précision ajoutée en commentaire peut mériter une relecture sans changer la configuration. La vue texte montre cette retouche, les déplacements de lignes et leurs terminaisons, indépendamment des exclusions structurelles.

Les mêmes sources alimentent un arbre de données et une vue de lignes séparée montrant un commentaire et un ordre modifiés.

Définir le périmètre de la relecture

Trois choix qui changent le sens du résultat

01

Aligner les documents

Les documents sont associés par position : premier avec premier, deuxième avec deuxième. Les chemins commencent par /0, /1, etc. Un ajout au milieu décale les associations suivantes ; metadata.name ne sert pas à retrouver automatiquement les ressources.

02

Écrire des exclusions précises

Saisissez un tableau de chaînes JSON, par exemple ["/0/metadata/time"]. Un chemin retire le nœud et ses descendants. Écrivez / avec ~1 et ~ avec ~0 ; les échappements JSON permettent les sauts de ligne. /0 exclut tout le premier document, /0/ uniquement sa clé vide.

03

Choisir le bon export

La structure produit des changements JSON typés après exclusion. Le texte exporte des blocs non filtrés, y compris inchangés. Toute modification désactive aussitôt l’ancien export. L’automatique attend 350 ms ; en manuel, utilisez Ctrl/Cmd+Entrée. Un remplacement dispose d’un rétablissement.

Des différences dont le type reste lisible

Les valeurs ne passent pas par une conversion JSON ordinaire

Flux complets

Les documents explicitement vides participent aussi. Un ajout ou retrait de document porte son propre marqueur. Les listes sont associées par indice : insérer au début peut modifier plusieurs positions suivantes.

Nombres comparés exactement

Les entiers gardent tous leurs chiffres dans la limite autorisée. Les flottants décimaux sont comparés par coefficient et exposant : 1.0 égale 1e0, mais diffère de l’entier 1. Le zéro flottant négatif reste distinct ; NaN est considéré égal à NaN.

Exclusion de sous-arbres

Le filtrage intervient des deux côtés avant la comparaison, même dans un conteneur ajouté ou remplacé par un scalaire. Les indices des listes ne sont pas renumérotés. Les compteurs portent sur les modifications restantes.

Rapport descriptif typé

Chaque scalaire porte un type et une valeur textuelle, ce qui préserve grands entiers et flottants non finis. Les conteneurs gardent leurs clés ou indices. Affichage, copie et téléchargement utilisent le même rapport actuel ; il ne s’agit pas d’un patch applicable.

Le sens exact de « identique »

Les limites du schéma font partie du résultat

Un sous-ensemble YAML 1.2 explicite
Le schéma est YAML 1.2 core avec timestamp et binary explicites. Les directives 1.1, clés non textuelles ou complexes, doublons, balises inconnues et set/omap/pairs sont refusés, ainsi que les formes scalaires non prises en charge. YES et NO restent des chaînes. Toute représentation YAML valide n’est donc pas acceptée.
Alias résolus, fusion facultative
Un alias retrouve l’ancre homonyme la plus proche qui le précède dans le même document. Les références anticipées, entre documents ou cycliques sont refusées. La fusion est désactivée au départ ; activée, elle privilégie les premières sources puis les clés explicites, sans fusion récursive. << entre guillemets ou marqué comme chaîne reste une clé ordinaire.
Horodatages lexicaux et octets binaires
Un timestamp explicitement balisé se compare selon son écriture originale, fractions et années anciennes comprises. Ni validité du calendrier ni équivalence des fuseaux ne sont vérifiées : ce n’est pas une comparaison d’instants. Le binaire exige du Base64 canonique avec remplissage, autorise les blancs YAML et compare les octets décodés.
Exclure ne masque pas la source
Les filtres agissent seulement sur les comptes et rapports structurels. Éditeurs, aperçus de remplacement et rapports texte restent intégralement visibles, avec les blocs inchangés. Les noms de mots de passe ne sont pas détectés automatiquement.
Relire sans fusionner ni déployer
Pas d’association par clé d’identité, de détection de déplacement dans les listes, de fusion à trois versions, de rendu Helm, d’import par URL ni d’historique serveur. Rendez Helm ailleurs avant de coller sa sortie. La structure ignore la présentation ; le texte en conserve tous les détails.
Des budgets avec échec explicite
Par entrée : 200 000 caractères, 800 000 octets UTF-8, 100 documents, 50 000 nœuds développés, profondeur 100 et 5 000 entrées ancre/alias combinées. Maximum : 5 000 changements, 1 million de caractères de chemins sur les deux côtés, 1 000 caractères par jeton numérique, 4 millions de caractères de rapport. Filtres : 100 pointeurs et 20 000 caractères. Worker : 5 s ; texte : 500 ms, distance d’édition 2 000 et 50 000 jetons. Un échec bloque l’export au lieu de fournir un résultat partiel. Le travail sur les scalaires développés et le YAML généré disposent chacun d’un budget de 2 millions de caractères.

Questions sur le comparateur YAML

Types, erreurs et confidentialité

Une valeur entre guillemets garde-t-elle le même type ?

Pas forcément. Le comparateur YAML distingue par exemple 1, 1.0 et "1" : entier, flottant et chaîne. Changer seulement de style de guillemets pour une même chaîne ne produit pas de différence structurelle. La vue texte montre toutefois la retouche.

Comment sont signalées les erreurs de syntaxe ?

Le message indique le côté concerné et, lorsqu’une position est disponible, la ligne et la colonne avec surbrillance dans l’éditeur. Le rapport structurel ne peut pas être exporté après échec. Le texte original reste comparable sans YAML valide.

Les ancres et alias sont-ils résolus ?

Oui, par valeur et à l’intérieur de chaque document. La cible doit précéder l’alias ; les cycles sont refusés. La prise en charge des clés de fusion << est une option distincte, désactivée par défaut.

Peut-on comparer plus de deux versions ?

Deux entrées sont comparées à la fois. Chacune peut contenir plusieurs documents, mais cela ne constitue pas une comparaison entre trois versions. Pour plusieurs révisions, effectuez des comparaisons successives en conservant une base choisie.

Les fichiers restent-ils dans le navigateur ?

Oui, l’ouverture et le traitement se font localement, sans envoi du contenu. Il n’existe pas de lien de partage ni d’historique serveur sur cette page. Vérifiez néanmoins le rapport choisi avant de le transmettre : le texte original n’est pas filtré.

Un cas de relecture manque ?

Ouvrir le comparateur YAML

Le comparateur YAML garde les types visibles. Relisez ensuite le texte original pour choisir le rapport qui correspond à votre contrôle.

Les rapports du texte original ne sont pas filtrés.