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

Conception Web Discussion :

Le langage de balisage extensible XML serait bien mieux que YAML, d'autant que YAML ne sert à rien


Sujet :

Conception Web

  1. #1
    Communiqués de presse

    Femme Profil pro
    Traductrice Technique
    Inscrit en
    June 2023
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Traductrice Technique

    Informations forums :
    Inscription : June 2023
    Messages : 474
    Points : 33 781
    Points
    33 781
    Par défaut Le langage de balisage extensible XML serait bien mieux que YAML, d'autant que YAML ne sert à rien
    Le langage de balisage extensible XML serait bien mieux que YAML, d'autant que YAML ne sert à rien, d'après Carl Johnson.

    Le langage de balisage extensible ou XML est un métalangage informatique de balisage générique dont l'objectif initial est de faciliter l'échange automatisé de contenus complexes entre systèmes d'informations hétérogènes (interopérabilité). Tandis que YAML permet de représenter des informations plus élaborées que le simple CSV en gardant cependant une lisibilité presque comparable. La syntaxe du flux YAML est relativement simple, efficace, moins verbeuse que du XML.

    Cependant, dans le podcast Go Time, Carl Johnson déclare que XML est meilleur que YAML. De son point de vue épicé, XML est meilleur que YAML, parce qu'il y a des situations où XML est approprié, mais il n'y a aucune situation où YAML est approprié.


    Parlons d'abord de XML

    XML a eu une très mauvaise réputation. La raison pour laquelle il a eu cette mauvaise réputation est que les gens l'utilisaient pour des choses pour lesquelles il n'aurait jamais dû être utilisé. XML signifie Extensible Markup Language (langage de balisage extensible). Et si vous l'utilisez comme un langage de balisage extensible, c'est en fait très bien.

    Disons que vous travaillez sur quelque chose et que vous vous dites : "Je fais un nouveau type de livre, et j'ai besoin d'annoter tous les versets de la Bible, et d'avoir les titres des chapitres et tout ça." C'est très bien pour ça. C'est vraiment bien quand vous avez un document, que certaines choses sont en italique, que d'autres sont en langue étrangère, qu'il y a des sous-titres et tout le reste. C'est vraiment bien pour ça.

    Ce n'est pas bon si c'est comme : "Je dois configurer ce serveur et le serveur doit savoir si cette valeur est vraie ou fausse." Non, ce n'est pas bon. Ne faites pas ça. Ce n'est pas une bonne utilisation de XML.

    Mais XML peut être utilisé à certaines fins. Et je pense que le fait que maintenant tout le monde écrive React... et qu'ils l'écrivent avec JSX... et que JSX est fondamentalement juste du XML en ligne... je pense que cela montre qu'il y a des cas où XML est plutôt bon.

    YAML d'un autre côté

    Je pense que YAML n'est jamais bon. Il y a toujours quelque chose de mieux que YAML ! Nous sommes enfin arrivés à Go 1.21 et j'en suis très heureux. Et vous savez pourquoi ? Parce que YAML m'a toujours mordu le derrière avec Go 1.20. Demandez-moi pourquoi.

    Eh bien, quand vous dites dans votre fichier de test : "testez ceci contre Go 1.20". Il interprète cela comme Go 1.2. C'est ainsi qu'à deux ou trois reprises, j'ai eu un repo où je me suis dit : "Ces tests ne passent pas. Pourquoi mes tests ne passent-ils pas ? Je viens de passer à Go 1.20." Et c'était comme : "Oh, non. J'ai décidé que c'était Go 1.2 " Et donc YAML va toujours vous faire ça...

    De meilleurs choix

    Je comprends pourquoi les gens utilisent YAML, mais il y a de meilleurs choix. Vous pouvez utiliser TOML. Vous pouvez utiliser CUE. Vous pouvez utiliser beaucoup de choses. J'aime la façon dont Caddy le fait. Avec Caddy, le langage canonique que Caddy comprend est JSON, mais ils ont des adaptateurs.

    Ainsi, si vous voulez écrire du YAML, vous pouvez le faire. Mais Caddy prend ce YAML et le transforme en JSON dans les coulisses. Il existe également un langage Caddy spécifique. Vous pouvez donc lui donner le langage Caddy et il le transforme en JSON dans les coulisses. Vous pouvez également lui donner une configuration NGINX et il la transformera en JSON dans les coulisses. Si vous disposez des cycles et du temps nécessaires, c'est probablement la meilleure solution pour la plupart des gens...

    Mais quand la seule façon de le faire est YAML, c'est comme : "Non... !" C'est trop sujet aux erreurs, il y a trop de choses... Il faut toujours tout citer.

    Et puis...

    La spécification YAML a toutes ces fonctionnalités que personne n'utilise jamais, parce qu'elles sont vraiment déroutantes et difficiles, et qu'on peut inclure des documents à l'intérieur d'autres documents, avec des références et tout ça... Et c'est du genre : "Oh, mec, je n'ai pas envie de faire ça ! Oh, mec, je ne veux pas avoir à comprendre tout ça."

    Et si on ne fait pas attention, ça peut être : "Oh ouais, les trois premiers trucs que je lui ai donnés ont compris ça, mais le troisième a utilisé un analyseur qu'ils ont trouvé à l'arrière d'un camion, et il ne l'a pas compris." et c'est comme : "Oh, mec..."

    YAML... jamais approprié. XML est parfois approprié.
    Source : Carl Johnson

    Et vous ?

    Pensez-vous que cette avis est crédible ou pertinent ?
    Quel est votre avis sur le langage YAML ?

    Voir aussi :

    Le langage C ne sera-t-il jamais battu en termes de rapidité d'exécution et de faible consommation d'énergie ? Voici les résultats d'une étude sur 27 langages de programmation les plus populaires

    Kubernetes exposé : Un Yaml près du désastre, 72% des installations sont non sécurisées et exposées aux attaques

    « Les formules Excel sont le langage de programmation le plus utilisé », d'après Microsoft qui annonce donc LAMBDA
    Pour la création des fonctions personnalisées à partir des formules Excel
    Publication de communiqués de presse en informatique. Contribuez au club : corrections, suggestions, critiques, ... Contactez le service news et Rédigez des actualités

  2. #2
    Membre émérite
    Avatar de Daïmanu
    Homme Profil pro
    Développeur touche à tout
    Inscrit en
    January 2011
    Messages
    692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur touche à tout

    Informations forums :
    Inscription : January 2011
    Messages : 692
    Points : 2 393
    Points
    2 393
    Par défaut
    Il y a des situations où XML est approprié, mais aucune où YAML n'est pas approprié
    Oui, XML est beaucoup plus complet, mais au détriment de la lisibilité. Pour une configuration simple, je préfère utiliser YAML.

    Si vraiment on a un risque que `version: 1.20` soit interprété comme `version: 1.2`, je vois pas pourquoi on ne pourrait pas utiliser de guillemets.

    On n'utilise pas toutes les fonctionnalités de YAML
    je pense que c'est applicable à beaucoup d'outils et de langages, cet argument n'est pas spécifique.

    J'ai bien entendu ses arguments, mais je ne suis pas convaincu.
    Je fais appel aux esprits de Ritchie, Kernighan, Stroustrup et Alexandrescu
    Donnez moi la force, donnez moi le courage de coder proprement !

    « Ça marche pas » n'est PAS une réponse convenable, merci de détailler le souci en fournissant l’environnement, le code source, les commandes et les messages d'erreur.

    Ce club possède également un clavardage, on y trouve quelques perles entre deux sessions d'entraides.

  3. #3
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    August 2008
    Messages
    26 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : August 2008
    Messages : 26 571
    Points : 189 251
    Points
    189 251
    Par défaut
    Citation Envoyé par Daïmanu Voir le message
    Oui, XML est beaucoup plus complet, mais au détriment de la lisibilité. Pour une configuration simple, je préfère utiliser YAML.
    Ça tombe bien, il ne parle absolument pas de XML pour ce cas d'utilisation !
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  4. #4
    Membre émérite
    Avatar de Daïmanu
    Homme Profil pro
    Développeur touche à tout
    Inscrit en
    January 2011
    Messages
    692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur touche à tout

    Informations forums :
    Inscription : January 2011
    Messages : 692
    Points : 2 393
    Points
    2 393
    Par défaut
    Citation Envoyé par dourouc05 Voir le message
    Ça tombe bien, il ne parle absolument pas de XML pour ce cas d'utilisation !
    Effectivement il ne le dit pas ouvertement, mais c'est tout le flou quand il dit que YAML ne sert à rien. Du moins c'est comme ça que je le comprends.
    Je fais appel aux esprits de Ritchie, Kernighan, Stroustrup et Alexandrescu
    Donnez moi la force, donnez moi le courage de coder proprement !

    « Ça marche pas » n'est PAS une réponse convenable, merci de détailler le souci en fournissant l’environnement, le code source, les commandes et les messages d'erreur.

    Ce club possède également un clavardage, on y trouve quelques perles entre deux sessions d'entraides.

  5. #5
    Expert confirmé Avatar de Zefling
    Homme Profil pro
    Développeur Web
    Inscrit en
    April 2007
    Messages
    1 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : April 2007
    Messages : 1 155
    Points : 4 542
    Points
    4 542
    Par défaut
    Autant utiliser des fichiers Json. Quand je tombe sur des fichiers Yaml ça me gave, il suffit de faire une erreur d'indentation et ça casse tout. Bien sûr c'est pas forcément simple de voir le problème. Et plus la configuration est grande, plus je trouve ça horrible.
    Pour des fichiers des quelques lignes ça va, et plus ça grandi, plus j'ai vraiment envie d'utiliser autre chose.

  6. #6
    Expert confirmé
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    April 2016
    Messages
    1 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : April 2016
    Messages : 1 437
    Points : 5 952
    Points
    5 952
    Par défaut
    Citation Envoyé par Carl Johnson
    Well, when you say in your test file:

    “test this against Go 1.20”

    It interprets that as Go 1.2. 😭🤣
    Avec YAML, quand on écrit une chaîne de caractères, souvent, on peut omettre les guillemets. Mais on peut alors se faire avoir par surprise si les guillemets étaient nécessaires. C'est ce que Colm O'Connor, l'auteur de StrictYAML, nomme The Norway Problem.

    Hélas, les formats les plus populaires pour représenter une arborescence lisible par un humain sont souvent nuls.

    XML et YAML sont tous les deux des usines à gaz remplies de failles de sécurité. Par exemple, ils sont tous les deux vulnérables à la billion laughs attack. Quand un fichier XML ou YAML est une entrée utilisateur, il faut utiliser un parseur qui n'accepte qu'un sous ensemble de XML ou YAML pour éviter les problèmes. En pratique, j'avoue apprécier la concision de YAML malgré ses défauts.

    JSON a ses qualités, mais il y a plusieurs standards qui coexistent. Nicolas Seriot avait écrit un article à ce sujet : Parsing JSON is a Minefield 💣.

    Pour les configurations, TOML n'est pas mal. Le problème de JSON est qu'on ne peut pas ajouter des commentaires.

  7. #7
    Expert confirmé Avatar de Zefling
    Homme Profil pro
    Développeur Web
    Inscrit en
    April 2007
    Messages
    1 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : April 2007
    Messages : 1 155
    Points : 4 542
    Points
    4 542
    Par défaut
    Citation Envoyé par Pyramidev Voir le message
    Pour les configurations, TOML n'est pas mal. Le problème de JSON est qu'on ne peut pas ajouter des commentaires.
    Ça c'est un gros problème. L'absence de commentaires rend le format non utilisable dans certains cas.

  8. #8
    Membre extrêmement actif
    Avatar de Madmac
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    June 2004
    Messages
    1 684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Alimentation

    Informations forums :
    Inscription : June 2004
    Messages : 1 684
    Points : 1 351
    Points
    1 351
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par Daïmanu Voir le message
    Effectivement il ne le dit pas ouvertement, mais c'est tout le flou quand il dit que YAML ne sert à rien. Du moins c'est comme ça que je le comprends.
    YAML est un bon outil de transfert de base de données ou pour sérialiser des objets. Et XML est excellent pour faire des trucs comme HTML. Ils ont tous les deux leur force et faiblesses. Le problème est que certains pensent qu'un des deux puisse être utiliser comme une solution universelle.

  9. #9
    Membre chevronné
    Avatar de olsimare
    Inscrit en
    December 2006
    Messages
    1 173
    Détails du profil
    Informations forums :
    Inscription : December 2006
    Messages : 1 173
    Points : 1 762
    Points
    1 762
    Par défaut
    A deux doigt de découvrir que JSON c'est bien...
    Bon à savoir : la touche F1 ne sert pas à commander des places pour le grand prix de Belgique.

  10. #10
    Membre chevronné

    Homme Profil pro
    Consultant informatique
    Inscrit en
    April 2015
    Messages
    428
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : April 2015
    Messages : 428
    Points : 1 938
    Points
    1 938
    Par défaut
    Il y a fort, fort longtemps, dans un endroit fort, fort lointain, il nous arrivait de définir un langage propre à l'accomplissement d'un type de tâches spécifiques. Une grammaire restreinte, un vocabulaire précis, tout ce qui n'y entrait pas était rejeté.
    Bon, nous étions vêtu de peaux de bêtes, chacun de nous devait maîtriser chaque aspect de sa vie depuis la couture des chaussons jusqu'à l'allumage du feu. Ce genre de truc ne nous posait donc pas vraiment problème. Seul souci, impossible de laisser sa trace au plafond de la caverne, nous étions anonymes, noyés dans l'obscurité de ces âges lointains, sans le plus petit réseau social pour faire notre pub.
    Groumpf !

  11. #11
    Membre éprouvé Avatar de pcdwarf
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    February 2010
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : February 2010
    Messages : 267
    Points : 964
    Points
    964
    Par défaut
    Je suis un vieux c**. J'ai jamais compris l'engouement pour le YAML.
    C'est comme JSON mais la clareté en moins.

    YAML est un langage assez facile à lire mais difficile à écrire, même avec l'éditeur qui va bien pour gérer l'indentation.

    Heureusement, comme le YAML peut s'écrire en JSON et vice versa, c'est assez facile de faire la traduction.

  12. #12
    Membre éprouvé Avatar de pcdwarf
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    February 2010
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : February 2010
    Messages : 267
    Points : 964
    Points
    964
    Par défaut
    Citation Envoyé par Pyramidev Voir le message

    Hélas, les formats les plus populaires pour représenter une arborescence lisible par un humain sont souvent nuls.
    Json avec un pretty printer, je trouve ça limpide. En tout cas très largement plus que le YAML

  13. #13
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    March 2005
    Messages
    2 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : March 2005
    Messages : 2 517
    Points : 4 877
    Points
    4 877
    Par défaut
    Citation Envoyé par Zefling Voir le message
    Ça c'est un gros problème. L'absence de commentaires rend le format non utilisable dans certains cas.
    Le sujet est sur YAML et non JSON.
    Et en YAML, un commentaire est introduit avec un #.

    Mais juste pour ma culture personnelle, peux-tu préciser dans quel cas l'absence de commentaire est un problème en JSON ?

  14. #14
    Expert confirmé
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    April 2016
    Messages
    1 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : April 2016
    Messages : 1 437
    Points : 5 952
    Points
    5 952
    Par défaut
    Citation Envoyé par popo Voir le message
    dans quel cas l'absence de commentaire est un problème en JSON ?
    Par exemple, si on bidouille un fichier de configuration pour éviter un bogue, alors il peut être pertinent de laisser sur place un commentaire pour expliquer pourquoi on a mis tel champ avec telle valeur.

  15. #15
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    March 2005
    Messages
    2 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : March 2005
    Messages : 2 517
    Points : 4 877
    Points
    4 877
    Par défaut
    Citation Envoyé par Pyramidev Voir le message
    Par exemple, si on bidouille un fichier de configuration pour éviter un bogue, alors il peut être pertinent de laisser sur place un commentaire pour expliquer pourquoi on a mis tel champ avec telle valeur.
    La bidouille ne devrait jamais être une raison valable selon moi.

    Et même dans ce cas, il n'y a aucune raison de laisser un commentaire sur le fichier en lui-même.
    La place d'un tel commentaire est dans la zone prévue à cet effet lors du push avec ton gestionnaire de versions.

    Et, de toute manière, un fichier de configuration est, par définition, normé.
    Remplace ceci { "parameter1" : "value" } par ceci { "_parameter1" : "a tiny text to explain the change", "parameter1" : "other" } et tu obtiendras le même résultat que si tu avais mis un commentaire.

  16. #16
    Expert confirmé
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    April 2016
    Messages
    1 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : April 2016
    Messages : 1 437
    Points : 5 952
    Points
    5 952
    Par défaut
    Citation Envoyé par popo Voir le message
    Et même dans ce cas, il n'y a aucune raison de laisser un commentaire sur le fichier en lui-même.
    La place d'un tel commentaire est dans la zone prévue à cet effet lors du push avec ton gestionnaire de versions.
    Si on explique la bidouille uniquement dans le message du commit et pas dans un commentaire du fichier de configuration, alors on augmente les chances que l'explication ne sera pas lue par les prochaines personnes qui mettront à jour le fichier de configuration.

    Citation Envoyé par popo Voir le message
    Et, de toute manière, un fichier de configuration est, par définition, normé.
    Remplace ceci { "parameter1" : "value" } par ceci { "_parameter1" : "a tiny text to explain the change", "parameter1" : "other" } et tu obtiendras le même résultat que si tu avais mis un commentaire.
    Si le programme qui lit le fichier de configuration accepte et ignore les champs inconnus, alors on peut en effet se servir de ces champs come des zones de commentaire. C'est effectivement une solution de contournement possible, même si je trouve ça un peu moche.

  17. #17
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    March 2005
    Messages
    2 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : March 2005
    Messages : 2 517
    Points : 4 877
    Points
    4 877
    Par défaut
    Citation Envoyé par Pyramidev Voir le message
    Si on explique la bidouille uniquement dans le message du commit et pas dans un commentaire du fichier de configuration, alors on augmente les chances que l'explication ne sera pas lue par les prochaines personnes qui mettront à jour le fichier de configuration.
    Toutes mes excuses, j'étais parti du principe que la fameuse bidouille était temporaire.
    Si on ne corrige jamais le bug et qu'on laisse la bidouille, il y a effectivement des chances que l'information se perde.

    Citation Envoyé par Pyramidev Voir le message
    Si le programme qui lit le fichier de configuration accepte et ignore les champs inconnus, alors on peut en effet se servir de ces champs come des zones de commentaire. C'est effectivement une solution de contournement possible, même si je trouve ça un peu moche.
    C'est effectivement moche, tout comme le fait de mettre une bidouille.
    C'est le même principe, c'est sensé être temporaire.

  18. #18
    Expert confirmé
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    April 2016
    Messages
    1 437
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : April 2016
    Messages : 1 437
    Points : 5 952
    Points
    5 952
    Par défaut
    La discussion sera plus simple avec des exemples concrets. Je ne me rappelle plus sur quels cas j'étais tombé au boulot, mais je viens de trouver un exemple dans le monde de l'open source.

    broot est une CLI codée en Rust que j'utilise régulièrement. Dans son code source, je viens de regarder la configuration des dépendances et je suis tombé sur la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    syntect = { package = "syntect-no-panic", version = "4.6.1" } # see issue #485
    https://github.com/Canop/broot/blob/...Cargo.toml#L59

    Au lieu d'utiliser le package syntect, le code utilise le package syntect-no-panic qui est un fork de syntect.
    Le commentaire permet de savoir que c'est pour contourner un bogue décrit ici : https://github.com/Canop/broot/issues/485
    L'auteur de broot espérait que le problème soit réglé à partir de la version 5 de syntect, mais cela n'a pas été le cas et la bidouille est restée.

    Oui, une bidouille, c'est moche. Mais, quand on a des dépendances, on ne contrôle pas tout.

    À part ça, toujours dans le même fichier de configuration, il y a un autre exemple de commentaire qui permet d'illustrer un autre cas que les contournements de problèmes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    codegen-units = 1 # this removes a few hundred bytes from the final exec size
    https://github.com/Canop/broot/blob/...Cargo.toml#L91

    codegen-units = 1 peut rendre le code plus rapide et rendre plus petit l'exécutable généré. En contrepartie, cela peut augmenter le temps de compilation.
    Dans cet exemple, le commentaire met en évidence que la motivation était de réduire la taille de l'exécutable généré.

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    June 2008
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : June 2008
    Messages : 34
    Points : 55
    Points
    55
    Par défaut One big size does not fit all
    Le XML aurait pu (du) être un excellent outil s'il n'avait pas été pollué par une tonne de fonctionnalités inutiles sinon dangereuses. C'est malheureusement souvent le problème des standards qui incorporent plein de trucs pour faire plaisir à tout le monde (comme le CORBA par exemple qui était une véritable usine à gaz). Ce qui est étonnant dans ce cas, est que le XML avait été conçu à l'origine comme une simplification du SGML. Quoiqu'il en soit le XML reste un bien meilleur choix pour l'échange de données complexes que le YAML.

  20. #20
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    March 2005
    Messages
    2 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : March 2005
    Messages : 2 517
    Points : 4 877
    Points
    4 877
    Par défaut
    Pyramide, les deux lignes que tu montres ne sont pas du JSON.

    AlexRutny, tu peux préciser de quelles fonctionnalités inutiles et dangereuses tu parles ?

Discussions similaires

  1. [XSLT extension]XML et protection de données
    Par trent94 dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 23/10/2006, 13h39
  2. Windows XP ne reconnait plus l'extension XML
    Par kennie77 dans le forum XML/XSL et SOAP
    Réponses: 9
    Dernier message: 03/02/2006, 17h05
  3. langage le + adapté pour XML ?
    Par heleneh dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 07/09/2005, 19h08
  4. [DTD][java]Verifier qu'un doc XML est bien formé
    Par bart64 dans le forum Valider
    Réponses: 3
    Dernier message: 08/01/2005, 15h17
  5. EXTENSIONS XML, XSL, XSLT, sur internet explorer 6 pack 2
    Par superjeanpi dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 08/12/2004, 13h11

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