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

Lazarus Pascal Discussion :

Bug EDI (ou FreePascal ?) à propos des messages affichés lors de la compilation [Lazarus]


Sujet :

Lazarus Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 154
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 154
    Par défaut Bug EDI (ou FreePascal ?) à propos des messages affichés lors de la compilation
    Bonjour,

    en fait c'est l'inverse : je suis en train de travailler sur un gros projet pas à moi, et il y a une quantité impressionnante de messages qui se mélangent à la compil, entre les warnings, les notes, les hints, c'est lourd pour avancer.
    J'ai donc décidé de supprimer (à ce propos, il y aurait des boutons ou checkboxes prévus pour "Tout cocher/tout décocher" pour les 3 types de messages, ça serait vraiment cool) toutes les "notes" et tous les "hints" pour ne conserver que les "warnings" et là, que croyez-vous que je gagne, à la compil qui suit ?
    Ça :
    Nom : illegal_option.png
Affichages : 349
Taille : 47,4 Ko

    Note : j'ai coupé l'image sur le côté droit, au total il y a 60 nombres. Et j'ai compté 39 "hints" et 24 "notes" dans les options/messages, total 63 : y aurait-il un rapport ?
    Toujours est-il qu'en recochant juste les "notes" ce message disparaît.

    Laz 1.6.2 / FPC 3.0.0 sous Debian 32 bits.

  2. #2
    Rédacteur

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Billets dans le blog
    84
    Par défaut
    Bonjour Jipété,

    Le message est en anglais : c'est donc, dans une version francisée de Lazarus, Free Pascal qui n'aime pas les données envoyées par l'EDI pour la compilation. Le bogue semble venir de Lazarus, mais je n'ai pas trouvé de moyens de le reproduire simplement.
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  3. #3
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 154
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 154
    Par défaut
    Salut, Gilles,
    Citation Envoyé par gvasseur58 Voir le message
    Le bogue semble venir de Lazarus, mais je n'ai pas trouvé de moyens de le reproduire simplement.
    J'ai donc décidé de supprimer décocher toutes les "notes" et tous les "hints" pour ne conserver que les "warnings"
    dans Projet / Options du projet / Options du compilateur / Messages et c'est comme ça que j'ai eu cette blague.
    C'est ce que tu as tenté ?

  4. #4
    Membre émérite

    Homme Profil pro
    Rédacteur technique (retraité)
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Rédacteur technique (retraité)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Par défaut
    Je constate le même problème avec Lazarus 1.4.4 / FPC 2.4.6 et Lazarus 1.6 / FPC 3.0 sous Windows. Ce n'est donc pas un problème nouveau à 1.6.2.

    L'erreur se produit systématiquement si au moins les 76 premiers messages sont dé-cochés dans la liste des messages (pas d'erreur s'il n'y en a que 75).

    Ce pourrait donc être une limitation du nombre de valeurs qui puisse être citées après l'option "-vm" (ou, ce qui est presque la même chose, de la longueur du paramètre -vm entier).
    Si c'est le cas, cette limitation serait plus probablement une limitation de FPC.

  5. #5
    Membre émérite
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2010
    Messages
    469
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2010
    Messages : 469
    Par défaut
    Bonjour

    il y aurait des boutons ou checkboxes prévus pour "Tout cocher/tout décocher" pour les 3 types de messages, ça serait vraiment cool) toutes les "notes" et tous les "hints" pour ne conserver que les "warnings"
    Oui, dans Options du projet, Verbosité on peut décocher toutes les notes et tous les conseils, si on le désire (même s'il est regrettable à mon avis de s'en priver).

    A mon avis les développeurs n'ont jamais imaginé qu'on décoche un très grand nombre de messages individuellement, ce qui doit être la cause du problème, la taille d'une option étant limitée. Je ne sais d'ailleurs pas comment on pourrait traiter le sujet. Interdire de décocher plus de 75 options ?

  6. #6
    Membre émérite

    Homme Profil pro
    Rédacteur technique (retraité)
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Rédacteur technique (retraité)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Par défaut
    Fixer simplement la limite à un nombre maximum de cases pouvant être décochées résulte d'une analyse sommaire du phénomène. Après des tests plus poussés, il s'avère que le problème est un peu plus complexe que cela.

    Comme je l'avais pressenti dans mon précédent post, c'est bien la longueur de l'option "-vm" toute entière qui est limitée (à 254 caractères, en-tête "-vm" exclus). Tout ce qui se trouve au delà de cette limite et jusqu'à l'espace de fin est purement et simplement ignoré par FPC.

    Le comportement de FPC va dépendre de l'endroit précis où tombe cette limite :
    • Si c'est juste avant ou juste après une virgule séparatrice, les nombres qui précèdent cette virgule sont correctement interprétés, aucune erreur n'est rapportée, mais aucuns des nombres situés après la limite ne sera pris en compte.
    • Si, par contre, la limite tombe au milieu d'une suite de caractères décimaux représentant un ID de message, cet ID est amputé d'un ou plusieurs chiffres et l'erreur "Illegal parameter" peut être émise. Ou pire, le message qui sera masqué peut ne pas être celui attendu.

    Par conséquent, dans le cas le plus défavorable, le nombre de cases décochées ne devrait pas dépasser 42 (42 fois 5 chiffres + 41 virgules = 251 caractères). Au mieux 51 si toutes correspondent à des ID à 4 chiffres (51 fois 4 chiffres + 50 virgules = 254 caractères)


    De cela on peut imaginer un moyen de contournement qui consisterait à récupérer l'option "-vm" générée dans la fenêtre Options du comilateur/Messages (via le bouton Afficher les options) puis à la ré-insérer dans Options du Compilateur/Options personnalisées où on peux l'éditer pour la fragmenter en plusieurs options "-vm" consécutives, aucune ne dépassant la limite de 42 ID.

  7. #7
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 154
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 154
    Par défaut
    Bonjour,
    Citation Envoyé par tintinux Voir le message
    Oui, dans Options du projet, Verbosité on peut décocher toutes les notes et tous les conseils, si on le désire (même s'il est regrettable à mon avis de s'en priver).
    (c'était pour essayer de cerner un problème.)

    OK à partir de la 1.6.2 ! Sous Windows 1.6rc1 ou sous Linux 1.4 ça ne fonctionne pas :
    Nom : verbosité.png
Affichages : 252
Taille : 23,4 Ko <-- Win XP / Laz 1.6rc1

    Citation Envoyé par DomDA91 Voir le message
    -- snip--
    De cela on peut imaginer un moyen de contournement qui consisterait à récupérer l'option "-vm" générée dans la fenêtre Options du compilateur/Messages (via le bouton Afficher les options) puis à la ré-insérer dans Options du Compilateur/Options personnalisées où on peux l'éditer pour la fragmenter en plusieurs options "-vm" consécutives, aucune ne dépassant la limite de 42 ID.
    Excellent !
    D'un autre côté, je me suis retrouvé dans cette galère suite à mon décochage manuel de tous les hints et toutes les notes, n'ayant pas fait le rapport avec l'onglet "Verbosité" (qui, de toute façon, n'aurait pas fonctionné, voir + haut).

    Un seul regret, au final : l'onglet "Verbosité" sert globalement mais laisse toutes les coches en place sur l'onglet "Messages" et je trouve ça vraiment mal fichu et pas ergonomique pour un sou, ou alors je suis passé à côté de quelque chose ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SP-2010] Blog, reduire la longueur des messages affichés
    Par Razorbak dans le forum SharePoint
    Réponses: 1
    Dernier message: 17/01/2013, 09h57
  2. [Dojo] Personnalisation des messages affichés lors du dnd.
    Par DevBetty dans le forum Bibliothèques & Frameworks
    Réponses: 11
    Dernier message: 12/08/2009, 18h19
  3. Gestion des exceptions et des messages à afficher
    Par Aurélie38 dans le forum Struts 1
    Réponses: 0
    Dernier message: 01/07/2009, 11h28

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