Tema de Usuari Discussió:Jmarchn

Joutbis (discussiócontribucions)
Jmarchn (discussiócontribucions)

@Vriullop: No sé quina és la causa. Jo no he tocat ni directa ni indirectament aquesta infotaula, que és la versió antiga.

Acabo d'arreglar problemes amb un mòdul que fa crides a Wikidata (WD) a Commons (em donava error en les crides a WD, i més coses), per això les he anul·lat (i ho he deixat en anglès); però aquí no es pot fer (d'anul·lar-les).

Joutbis (discussiócontribucions)

Wikidata últimament va com una cafetera i dóna molts timeouts, que no sigui això.

@Vriullop: També apareix Q8436 en comptes de "família" a Lleó Focas el Vell

Vriullop (discussiócontribucions)

Un problema del client Wikibase, un altre cop.

  • Mòrt (Q4)
  • {{#invoke:Wikidades|getLabel|Q4}}: mòrt

Provat directament en Lua:

  • mw.wikibase.getLabel('Q4'): nil
  • mw.wikibase.getLabelWithLang('Q4'): nil nil
  • mw.wikibase.getLabelByLang('Q4', 'ca'): mort

Inexplicable. La darrera funció s'intenta evitar sempre que sigui possible com diu la documentació. El mòdul ho mostra en occità perquè primer prova amb getLabelWithLang i després amb getLabelByLang per les llengües fallback, el mateix que hauria de fer directament getLabel.

Potser està relacionat amb les tasques de manteniment d'aquesta matinada Viquipèdia:Tech News, però ara mateix no tinc temps ni ganes de reportar un bug estrany.

Vriullop (discussiócontribucions)

És un tema que afecta en molt llocs. M'he decidit a crear phab:T252105.

Joutbis (discussiócontribucions)

El teu Phabricator l'han redirigit a aquest, i llegint-lo sembla que han fet marxa enrere i el donen per solucionat. En canvi, la part nostra no s'ha bellugat gens. Al contrari, cada vegada s'escampa a més articles. Potser hauríem de dir-hi alguna cosa?

Vriullop (discussiócontribucions)

Té mala pinta, el problema de Commons és més vell, però també podria ser que hi estigui relacionat una vegada ens han canviat de servidor aquesta matinada. La marxa enrere va ser de la darrera versió del MediaWiki i ara el bug està com un blocatge per poder tirar-la endavant. Si no se soluciona aviat ja tinc preparat canviar a mw.wikibase.getLabelByLang que sí que funciona.

Amadalvarez (discussiócontribucions)

Pot ser que estigui arreglat i calgui que es refresquin les caches?.

Acabo de modificar un que donava error (afegit un punt al fina de la descripció) i ja no es queixa.


Joutbis (discussiócontribucions)

Algunes etiquetes (Mort) s'han solucionat; d'altres no. Mireu David Bowie. Potser primer hauríem de refrescar les plantilles primer? Que jo hagi vist, passa a Persona, però també a IGP; segurament d'altres.

Vriullop (discussiócontribucions)

Una vegada refrescat a Wikidata en els articles sol ser ràpid. També podria ser la caché del teu navegador. Fes-hi una edició nul·la.

Joutbis (discussiócontribucions)

És com ho faig normalment. Algunes etiquetes continuen malament.

Vriullop (discussiócontribucions)

Podria ser, ja havia provat ?action=purge i no m'havia funcionat. Però són molts i caldria que ho refresquin en origen.

Joutbis (discussiócontribucions)

Gràcies, ho aniré seguint. Aquests dies que he estat repassant les infotaules persona, m'he trobat molts problemes amb Wikidata. No ho tenen gens fi. A veure si hi ha sort i et fan cas.

Amadalvarez (discussiócontribucions)
Vriullop (discussiócontribucions)

No té res a veure amb etiquetes, és cosa del mòdul amb el nou tractament de separadors.

Jmarchn (discussiócontribucions)

Al mòdul que tinc a Commons també ha aparegut

1. la necessitat de que les variables o funcions o que siguin publicades (a través de l'habitual p.) o que siguin declarades com a locals.

2. mw.site.stats.pagesInCategory (nom_categoria, subcats) no funciona ja que s'ha eliminat la variable global subcats, ara funciona bé amb 'subcats'.

O sigui que s'ha tocat moltes coses....

Vriullop (discussiócontribucions)

Això sol aparèixer en usar Module:No globals, o qualsevol require que usi aquest mòdul, que comprova que no hi hagi cap variable global, una bona pràctica.

Jmarchn (discussiócontribucions)
Vriullop (discussiócontribucions)

Dóna un error del mòdul Wikidata de Commons, no per l'etiqueta. La funció getLabel té el frame com entrada per a plantilles. Cal usar la funció p._getLabel(entity, args), és a dir: WD._getLabel('Q77604', {['lang']='ca'})

Jmarchn (discussiócontribucions)

Hola,

He recuperat la versió antiga de Commons:Module:DiseasesNav, on va fallar inicialment mw.wikibase.getLabelByLang ('Q...', lang) i ja funciona perfectament, a igual que en la nostra Viquipèdia on també em donava error.

Per descomptat que utilitzava WD abans del getLabel.. Ja he etiquetat les variables i funcions que no eren globals com a locals. Finalment (i com a curiositat), has utilitzat el Mòdul:SimpleDebug que vaig crear fa temps?.

Moltes gràcies

Vriullop (discussiócontribucions)

No m'he explicat bé. Vull dir que en el mòdul Wikidata de Commons, la funció getLabel és d'entrada des de plantilles i la funció _getLabel és per altres mòduls. Al Wikidades d'aquí vaig habilitar totes les funcions per accedir-hi via invoke o via require usant el mateix nom per evitar aquests embolics.

Els problemes els veig amb la consola de depuració que ja m'he acostumat a usar-la per a qualsevol prova abans de desar, cosa que amb mòduls en viu molt usats no es pot fer alegrament. Per exemple la primera funció require("Module:SimpleDebug").w("S'ha passat per aquí") és el mateix que mw.log("S'ha passat per aquí").

Jmarchn (discussiócontribucions)

El funcionament de _getLabel de Wikidata a Commons no és el mateix que getLabel de Wikidata a la Viquipèdia. A Commons retorna un enllaç amb Qnn i (no l'etiqueta, com caldria) i cal escriure-ho com WD._getLabel({['id']='Qnn', ...}), però no cal amoïnar-s'hi, no utilitzo allà Wikidata (sinó mw.wikibase.getLabelByLang)

En quan a SimpleDebug pot fer més coses... M'ho vaig mirar això de la consola fa uns mesos i ho vaig trobar molt limitat (acostumat com estic amb els editors de programes amb ObjectPascal) però potser no ho necessites.

Vriullop (discussiócontribucions)

Ho vaig dir més amunt. La documentació diu: "[mw.wikibase.getLabelByLang] should not be used to get the label in the user's language on multilingual wikis, use mw.wikibase.getLabel for that if by any means possible." Jo l'estic evitant usar aquí, en un wiki multilingüe com Commons amb més raó.

La funció del Wikidata de Commons sí que funciona com s'espera, la sintaxi bona te la vaig posar més amunt: WD._getLabel('Q77604') retorna [[:ca:Radiologia|radiologia]] i si vols WD._getLabel('Q77604', {['link']='-'}) retorna radiologia.

Jmarchn (discussiócontribucions)

Fantàstic!

Ja ho he canviat, per WD._getLabela Commons. És millor, ja que si no troba una paraula en l'idioma de l'usuari el busca automàticament amb l'idioma més proper. Abans havia d'enviar-ho en anglès si no trobava la paraula en els seu idioma.

Joutbis (discussiócontribucions)

Pel que explica al final del phab:T252079 hi havia un nivell de cache intermig que no podien purgar, i que no caducava fins aquesta matinada, però en principi a partir de les 2:58 ja estava, i purgant s'hauria d'anar arreglant tot. Potser has de purgar l'item de wikidata? Si així tampoc no s'arregla, potser és un problema diferent i caldrà obrir un phab nou.

Déu n'hi do com s'han lluït amb aquesta...

Resposta a «Occità»