Discussion MediaWiki:Gadget-Evaluation.js

Dernier commentaire : il y a 1 mois par Od1n dans le sujet Problème apparaissant sur deux articles

Bug ?

modifier

Voir Wikipédia:Le Bistro/18 juillet 2017#Bug de l'outil d'évaluation ?. — Thibaut (discuter) 18 juillet 2017 à 13:40 (CEST)Répondre

Sensibilité à la casse

modifier

TODO - rendre le script insensible à la casse employée pour les valeurs de "importance" et "avancement" dans le modèle {{Wikiprojet}}, ce qui est possible depuis 140934095. od†n ↗blah 29 septembre 2017 à 16:44 (CEST)Répondre

  Fait, parmi quelques autres petiteuh corrections. od†n ↗blah 1 octobre 2017 à 17:01 (CEST)Répondre

Ne marche plus (résolu)

modifier

Bonjour,

J'ai voulu utiliser l'outil pour évaluer Eugène Figuière (d · h · j · ) mais ça n'a rien fait. Ni quand le modèle n'est pas déjà présent en page de discussion, ni quand il faut l'éditer.

Je n'ai aucun message d'erreur.

Pour information j'utilise Firefox.

Cordialement,

-- Hercule (discuter) 3 octobre 2017 à 14:30 (CEST)Répondre

Le code pour la modification de la page via Ajax est très ancien et n'est peut-être plus compatible. Est-ce que cela fonctionnait avant mes récentes modifications ? od†n ↗blah 3 octobre 2017 à 16:05 (CEST)Répondre
Cela fait malheureusement un moment que je ne suis pas venu sur Wikipédia, donc je n'en sais rien. --Hercule (discuter) 3 octobre 2017 à 16:16 (CEST)Répondre
Je confirme que le script n'était déjà plus fonctionnel avant mes modifications. J'avais développé en vérifiant avec une version de "debug" locale, stoppant avant l'ajax. od†n ↗blah 3 octobre 2017 à 16:58 (CEST)Répondre
Dommage, il est bien pratique ce script pour modifier les évals sans changer ni ouvrir la PdD. Un réparateur?  . --KAPour les intimes © 7 octobre 2017 à 10:23 (CEST)Répondre
Je viens de signaler le problème sur la page de discussion du projet Javascript. Djiboun (discuter) 8 octobre 2017 à 14:59 (CEST)Répondre
  C'est réparé ♪♫   od†n ↗blah 8 octobre 2017 à 16:18 (CEST)Répondre
Merci od†n pour ces modifications, mais l'outil ne fonctionne pas pour moi, dans le cas où la page de discussion n'existe pas. Est-ce que quelqu'un d'autre a pu le tester ?. Djiboun (discuter) 8 octobre 2017 à 18:59 (CEST)Répondre
Je viens de faire de nouvelles modifs, pourrais-tu tester de nouveau ? od†n ↗blah 8 octobre 2017 à 19:41 (CEST)Répondre
Toujours pas mieux lorsque la page de discussion n'est pas encore créée. Djiboun (discuter) 8 octobre 2017 à 21:24 (CEST)Répondre
Ce coup-ci ça fonctionne, cependant le code est devenu sale à mon goût… od†n ↗blah 8 octobre 2017 à 22:42 (CEST)Répondre
Une erreur de script ligne 51: une parenthèse fermante en trop. Bon courage et merci. Louistisserand (discuter) 9 octobre 2017 à 09:20 (CEST)Répondre
On devrait être bon maintenant   od†n ↗blah 10 octobre 2017 à 02:38 (CEST)Répondre
C'est tout bon. Merci! Louistisserand (discuter) 10 octobre 2017 à 10:53 (CEST)Répondre
Tout fonctionne très bien dorénavant, merci od†n et Louistisserand pour votre travail de réparation et d'amélioration ! Djiboun (discuter) 14 octobre 2017 à 09:33 (CEST)Répondre

Pas d'ajout automatique a la liste de suivi

modifier

Bonjour, serait-il possible de modifier le script de façon a ce que, lorsque la page de discussion n'existe pas et doive être créée par le script, cette nouvelle page et l'article ne soient pas automatiquement ajouté a sa liste de suivi ? Ce serait très pratique ! Merci ! La coince (discuter) 22 mai 2020 à 13:53 (CEST)Répondre

Eval projet

modifier

Bonjour,

Il n'y aurait pas le moyen de pouvoir non pas changer l'évaluation d'un projet, mais d'en ajouter. Je ne pense pas être clair, mais en gros, quand on clique sur « Évaluer », ce serait bien d'avoir par exemple une cas « Ajoutez un projet », pour ne pas avoir à aller sur la PdD pour ajoutez une nouvelle évaluation de projet.

Cordialement,

Florian COLLIN (discussion) 6 juin 2020 à 20:50 (CEST)Répondre

Bien d'accord, c'est la dernière fonctionnalité pour que ce script soit parfait   (je me permets de mentionner @Od1n, le développeur) — Pharma (discuter) 4 août 2021 à 23:12 (CEST)Répondre

L'outil ne fonctionne plus

modifier

J'utilise Firefox et l'outil ne fonctionne plus pour moi depuis quelques jours. Cordialement, Lebronj23 (discuter) 4 février 2022 à 10:43 (CET)Répondre

J'ai testé rapidement, et chez moi ça semble fonctionner. Il faudrait davantage de précisions pour savoir par où commencer à chercher… notamment, y a-t-il des erreurs affichées dans la console JavaScript ? od†n ↗blah 5 février 2022 à 02:34 (CET)Répondre
@Od1n merci du retour (que je découvre seulement maintenant...). L'outil ne fonctionne toujours pas pour moi. Du moins qu'à moitié, il n'affiche que les projets déjà évalués en page de discussion et non la liste de toutes les projets contenus dans mon fichier vector.js. Donc si l'article n'est pas encore évalué, la liste est vide.
J'ai ouvert la console, il y a une erreur:
> Exception in module-execute in module skins.vector.user:
> ReferenceError: obtenir is not defined
Cordialement, Lebronj23 (discuter) 4 avril 2022 à 15:10 (CEST)Répondre
@Od1n, merci pour la modification de ma page vector.js, ça fonctionne maintenant. Cordialement, Lebronj23 (discuter) 4 avril 2022 à 19:03 (CEST)Répondre
J'avais en fait identifié deux problèmes :
  • Le problème de portée des variables, que j'ai corrigé ici, qui faisait que les variables de configuration n'étaient de toute façon pas visibles par le gadget, et cela depuis la mise en œuvre du ResourceLoader (2011 quand même).
  • Plus problématique, l'erreur JavaScript « ReferenceError: obtenir is not defined », indiquant une race condition. La fonction obtenir() est définie dans le MediaWiki:Common.js, et on considère que les scripts utilisateur sont exécutés après ce script, et peuvent donc utiliser cette fonction sans avoir besoin de faire un mw.loader.using('site'). Je pense que les développeurs de MediaWiki veilleront à ce que cet ordre d'exécution ne change pas, car autrement cela irait casser énormément de scripts utilisateur. Le scénario de la race condition serait donc :
  1. MediaWiki:Gadget-Evaluation.js est exécuté avant le MediaWiki:Common.js ;
  2. MediaWiki:Gadget-Evaluation.js contient un mw.loader.using('user'), et charge donc à ce moment les codes JavaScript utilisateur ;
  3. le JavaScript utilisateur est chargé et exécuté ; sauf que le MediaWiki:Common.js n'a toujours pas été chargé.
J'aurais une idée qui pourrait éventuellement corriger le problème, mais ce qui m'intéresserait de savoir, c'est si l'erreur se produit régulièrement chez toi. Si tu laisses la console JavaScript ouverte et que tu navigues sur diverses pages, l'erreur se produit à quelle fréquence ? (systématiquement à chaque page, fréquemment, de temps en temps ?)
od†n ↗blah 5 avril 2022 à 02:22 (CEST)Répondre
@Od1n, l'erreur « ReferenceError: obtenir is not defined » se produit systématiquement sur toutes les pages. Cordialement, Lebronj23 (discuter) 5 avril 2022 à 09:01 (CEST)Répondre
@Lebronj23 : J'ai effectué ceci. Le but de la tentative est qu'en ajoutant la dépendance "user" à ce niveau, on ne prend pas le ResourceLoader par surprise, on lui dit bien qu'il y a besoin de "user", et on compte sur lui pour avoir l'intelligence d'exécuter "site" avant "user" lorsqu'il construit son graph de dépendances pour les chargements initiaux, au lieu de simplement lui dire "ok tu peux charger ce gadget au plus tôt, si tu veux", puis une fois dans le code du gadget charger les dépendances en dehors du graph initial, c'est-à-dire quelque chose avec peut-être moins de garanties sur l'ordre.
À noter que pour faire simple, dans le Gadgets-definition comme dans le code du gadget, j'ajoute simplement les trois dépendances (mediawiki.util, mediawiki.api, user) d'un bloc. Il est inutile de chercher à "optimiser le chargement" : ces trois modules sont de toute façon chargés sur toutes les pages (oui, même le mediawiki.api ; en cherchant dans le Resources.php on constate qu'il est une dépendances pour divers modules de "bas niveau"), donc en listant ces dépendances on ne fait que garantir un ordre de chargement, mais ça ne fait rien charger de plus que ce qui est déjà chargé.
od†n ↗blah 6 avril 2022 à 03:01 (CEST)Répondre
@Od1n l'erreur persiste malheureusement. Cordialement, Lebronj23 (discuter) 6 avril 2022 à 08:53 (CEST)Répondre

Ajouter l’avancement « homonymie »

modifier

Bonjour. Le modèle {{Wikiprojet}} peut prendre comme valeur d’avancement la valeur « homonymie ». Serait-il possible de le rajouter dans les valeurs possibles proposées par le gadget ? Merci d’avance, Lepticed7 (Viens tcharer ! :D) 20 février 2023 à 19:00 (CET)Répondre

C'est fait. Comme demandé sur WP:DIMS, j'ai désactivé les évaluations pour les pages d'homonymie sans portail. Escargot (discuter) 9 mars 2024 à 13:50 (CET)Répondre

Suggestions d'améliorations

modifier

Salut @Escargot bleu et merci pour toutes tes modifications,

Je ne suis pas un as en JS, donc si tu pouvais implémenter les suggestions suivantes ça serait vraiment cool :

  • Ajout de projets personnalisés (via un champ de texte)
  • Boutons pour changer l'ordre manuellement
  • Bouton d'auto-tri selon l'importance

Je ping @Od1n en rapport avec les modifications sur Module:Wikiprojet

Amicalement, Athozus Discussion 17 mars 2024 à 14:59 (CET)Répondre

Bonjour @Athozus,
Je vais voir ce que je peux faire. L'esthétique n'est pas mon point fort et j'aurai du mal à positionner ces boutons et ce champ de texte. Pour le tri automatique par ordre d'importance, ça ne posera pas de problème, mais je ne ferai pas ça aujourd'hui. Escargot (discuter) 17 mars 2024 à 15:07 (CET)Répondre
Ok, pas de soucis. Si besoin, le code que j'ai fait en Lua (à convertir en JS donc) se trouve dans Module:Wikiprojet#L-141. Athozus Discussion 17 mars 2024 à 15:13 (CET)Répondre
@Athozus
Petite question : dans quel contexte aurais-tu besoin d'ajouter manuellement des projets ?
Sans remettre en cause la nécessité d'un champ de recherche, idéalement il faudrait que l'outil suggère directement les projets pertinents. Escargot (discuter) 19 mars 2024 à 11:38 (CET)Répondre
Merci @Escargot bleu pour la réponse,
C'est principalement dans le cadre de maintenance, ou quand des articles manquent de projets d'évaluation qui ne sont pas dans ma liste. Athozus Discussion 19 mars 2024 à 12:21 (CET)Répondre

L'outil ne fonctionne plus

modifier

Bonjour, exemple sur cet article, "Interrogation de la page de discussion..." s'affiche mais rien ne se passe. Cordialement, Lebronj23 (discuter) 24 mars 2024 à 11:34 (CET)Répondre

Bonjour @Lebronj23,
Pourriez-vous copier le code qui s'affiche dans la console JavaScript ? (même chose que pour votre conversation d'il y a deux ans) et préciser le navigateur que vous utilisez. Escargot (discuter) 24 mars 2024 à 12:12 (CET)Répondre
Bonjour @Escargot bleu, merci pour le retour rapide. J'utilise la dernière version de Firefox (124.0.1).
Erreur:
> Uncaught TypeError: $(...).attr(...).autocomplete is not a function
>ev_drawEvaluation ext.gadget.Evaluation-script-0.js:408
>ev_launchEval ext.gadget.Evaluation-script-0.js:148
>jQuery 3
>xhr index.js:311
>jQuery 4
Cordialement, Lebronj23 (discuter) 24 mars 2024 à 12:17 (CET)Répondre
@Lebronj23 Normalement c'est résolu. Escargot (discuter) 24 mars 2024 à 12:44 (CET)Répondre
Merci ! Ça fonctionne effectivement. Juste un détail, le champ "ajouter un projet" est intéressant, ne devrait cependant pas être utilisé dans la majorité des cas. Ne serait-il donc pas plus judicieux de le placer sous le bouton "Exporter..." plutôt qu'au dessus ? Cordialement, Lebronj23 (discuter) 24 mars 2024 à 12:48 (CET)Répondre
Je n'ai pas d'avis sur la question du positionnement du champ « Ajouter un projet ». Je laisse @Florian COLLIN, @Pharma et @Athozus qui l'ont demandé donner leur opinion sur la question. Escargot (discuter) 24 mars 2024 à 13:00 (CET)Répondre
Oh merci c'est incroyable ce nouveau champ ! Pour le coup, je pense que le bouton « Exporter » doit rester en-dessous, car c'est l'action finale. Athozus Discussion 24 mars 2024 à 14:38 (CET)Répondre
+1
Merci c'est super ! — Pharma 💬 24 mars 2024 à 15:52 (CET)Répondre
Au fait, l'outil présente toujours des bugs : voir ce diff (l'évaluation que j'avais faite si ça peut servir : avancement=?, projet astronomie=moyenne). J'ai l'impression que c'est parce que la pdd n'était pas vide. — Pharma 💬 24 mars 2024 à 17:18 (CET)Répondre
@Pharma J'ai testé et je n'ai pas eu de problème. Est-ce que les cases Evaluation étaient bien cochées ? Escargot (discuter) 24 mars 2024 à 18:05 (CET)Répondre
Je ne pourrais pas te le promettre, donc il est fort probable que j'aie zappé oui ! Sorry — Pharma 💬 24 mars 2024 à 18:14 (CET)Répondre
J'ai modifié pour que le bouton « Évaluation » se coche automatiquement quand on sélectionne une importance. Escargot (discuter) 26 mars 2024 à 23:38 (CET)Répondre

Problème (bis)

modifier

Bonjour, à nouveau un problème aujourd'hui, sous Firefox. Cordialement, Lebronj23 (discuter) 28 mars 2024 à 16:53 (CET)Répondre

C'était effectivement une petite bourde de ma part. Merci à Escargot qui a corrigé moins de cinq minutes après ton signalement. od†n ↗blah 29 mars 2024 à 02:40 (CET)Répondre
Pour info, puisque k est réutilisé à chaque itération du for, et que "const" produisait une erreur (à la différence des for...of), j'ai craint qu'avec "let" on se retrouve avec le même problème qu'avec "var", à savoir que tous les callbacks voient la dernière valeur de k.
Mais en fait non, ça fonctionne comme attendu. Voir cette section sur MDN : Lexical declarations in the initialization block. En fait il y a un traitement spécifique, chercher ce passage : « let declarations are special-cased by for loops ». Il y a bien création d'une nouvelle variable, et sa valeur est calculée à partir de la variable de l'itération précédente. Autrement dit, à chaque itération cela fait : « let kNouveau = kPrecedent; ++kNouveau; », et c'est ce fonctionnement "interne" en deux temps qui fait que "const" ne peut pas être utilisé. Dommage, parce que j'ai l'impression qu'il aurait été possible que "const" soit aussi utilisable.
od†n ↗blah 29 mars 2024 à 08:45 (CET)Répondre
@Od1n Merci beaucoup ! Lebronj23 (discuter) 30 mars 2024 à 11:34 (CET)Répondre
C'est plutôt l'Escargot qu'il faut remercier, parce que c'est lui qui a réalisé tous les développements récents sur le script. od†n ↗blah 31 mars 2024 à 09:54 (CEST)Répondre

Problème apparaissant sur deux articles

modifier

Bonjour   En premier lieu, merci pour ce gadget qui fonctionne très bien dans son ensemble. J'ai juste rencontré un pb sur deux articles Conseil de sécurité des Nations unies et Concours Eurovision de la chanson 2024, je précise que je suis sous Firefox. Dans les deux cas le gadget m'affiche dans la grille d'évaluation des lignes supplémentaires. Ces lignes correspondent à une partie du texte de la PdD de l'article, elles commencent par {{Wikiprojet/alias|Projet=(nom du premier intervenant sur la page de discussion). Peut-être un bug en rapport avec l'utilisation de Modèle:Wikiprojet/alias?. Salutations wikipédiennes. JuanManuel Ascari (discuter) 13 mai 2024 à 17:06 (CEST)Répondre

Même problème sur ces deux pages. — Pharma 💬 13 mai 2024 à 17:52 (CEST)Répondre
Le problème dans ces deux pages était la présence de }} non précédés de {{ dans la page de discussion. J'ai modifié la manière de détecter le modèle {{Wikiprojet}} ; ça a résolu le problème sur ces deux pages, mais ça peut en avoir créé d'autres ailleurs. Escargot (discuter) 13 mai 2024 à 19:20 (CEST)Répondre
Si tu n'es pas sûr de toi, il est peut-être plus opportun de modifier les pages de discussion mentionnées en mettant les accolades fermantes entres des balises nowiki ? — Pharma 💬 13 mai 2024 à 19:30 (CEST)Répondre
Merci   Escargot bleu : pour cette réaction rapide  +. Ca fait plaisir. Salutations. --JuanManuel Ascari (discuter) 13 mai 2024 à 19:38 (CEST)Répondre
@Pharma Ce n'est pas que je ne suis pas sûr de moi, mais que par habitude, même quand on pense avoir bien fait les choses il peut y avoir des problèmes.
Dit autrement, je suis convaincu que ma modification est correcte mais je ne prendrais pas le risque de le dire et de m'apercevoir juste après que j'ai oublié un cas particulier.🙃 Escargot (discuter) 13 mai 2024 à 20:38 (CEST)Répondre
J'ai regardé un peu et je dirais que ça convient ; c'est la même approche que j'ai déjà utilisée dans des scripts persos, pour capturer des modèles qui peuvent éventuellement eux-mêmes contenir des modèles. En plus, cette nouvelle regex est beaucoup plus simple ; les précédentes j'ai même lâché l'affaire pour chercher à les comprendre. À noter que la nouvelle regex est une bonne base qui peut même être développée pour supporter davantage de cas de figure : sous-sous-modèles imbriqués, paramètres (qui utilisent trois accolades) ; mais dans le cas présent ce n'est pas nécessaire, le simple support de modèles imbriqués est suffisant. od†n ↗blah 16 mai 2024 à 17:31 (CEST)Répondre
Revenir à la page « Gadget-Evaluation.js ».