Wikipedia:Bar/Discussioni/A tutti i templatizzatori

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
A tutti i templatizzatori NAVIGAZIONE


Nuova gestione dell'#ifexist: i template che ne fanno un uso troppo massiccio cesseranno di funzionare fra una settimana. I dettagli nella mail di Tim Starling che segue:

«Werdna's #ifexist limit feature is now live. In response to complaints of template breakage, I have increased the limit on Wikimedia wikis temporarily, from 100 to 2000. Barring a coup, it will stay at 2000 for about a week, and then we'll lower it to 100. Please use this one-week period to check pages and templates that use #ifexist heavily. Look in the HTML source of the preview or page view. There will be a "limit report" that looks like this:

<!--
Pre-expand include size: 617515/2048000 bytes
Post-expand include size: 360530/2048000 bytes
Template argument size: 51168/2048000 bytes
  1. ifexist count: 1887/2000
-->
This is the limit report from [1], one of the pages that will break.

At the end of the week, any pages which have a #ifexist count of over 100 will cease to be rendered correctly (after the next edit or cache clear). All #ifexist calls after the hundredth will be treated as if the target does not exist. In some cases it may be possible to rewrite your templates so that they still do the same thing, but with less #ifexist calls. In other cases, you will need to remove template features. Removing features is always sad, as a sofware developer I know that, but sometimes it is necessary for the good of the project. This is one of those times.»

Ciao,

Frieda (dillo a Ubi) 17:35, 30 nov 2007 (CET)[rispondi]

Template con più di 100 ifexist penso siano rari. Bisognerebbe ottenere comunque un elenco, è possiblie una query al DB di questo tipo? --Aeternus 19:14, 30 nov 2007 (CET)[rispondi]

Da quel che vedo viene controllato il totale di ifexist nella pagina quindi potrebbe risultare dalla somma di più template o da template ripetuti molte volte. Gvf 19:25, 30 nov 2007 (CET)[rispondi]
Quoto Gvf. Non è possibile sapere quali pagine superano il limite, bisogna guardare i messaggi di errore. --Pietrodn · «zitto e parla!» 20:41, 30 nov 2007 (CET)[rispondi]
Infatti. Giusto per fare un esempio, penso che più che il template {{Bio}}, che con la sua decina di #ifexists compare però una sola volta per pagina, siano preoccupanti template {{Tl}} (1 solo #ifexist) e simili che in una discussione possono comparire tante volte. Comunque penso che noi raggiungiamo i 100 in pochissime pagine (un esempio - inusuale - ne è Template:Portale/man. --Toobaz rispondi 20:48, 30 nov 2007 (CET)[rispondi]
e questa allora? Aiuto:Abbozzo/Elenco. --Ping-Boing 21:58, 30 nov 2007 (CET)[rispondi]
Sì, era decisamente un caso particolare; l'ho "detemplatizzata", anche se ovviamente perde qualche informazione. --Toobaz rispondi 00:46, 1 dic 2007 (CET)[rispondi]
Non sarebbe meglio togliere l'#ifexist dal template {{Tl}}? Io sarei per rimuovere il (uso) in alto a destra, mi pare talmente tautologico, tanto è palese che basta cliccare sul link del nome del template per arrivare ad una pagina con le spiegazioni (magari se ci decidessimo a usare {{Man2}} anziché {{Man}}, molto più logico). Tra l'altro da anche problemi grafici, come il segno di interpunzone spostato (es. {{W}}.)--Trixt 01:17, 1 dic 2007 (CET)[rispondi]
Io l'"uso" lo... uso, non vorrei toglierlo. Almeno finché c'è Man. Se però vuoi proporre di rimpiazzare tutti i Man con Man2, potresti aver ragione; al momento non mi vengono in mente controindicazioni, tranne forse che si appesantisce il caricamento della pagina--Bultro 15:58, 1 dic 2007 (CET)[rispondi]
quando ho fatto il man2 mi è stato criticato per altri motivi simili a quello del #ifexist quindi non so se il cambio si può fare, quanto all'ifexist li presente, basta metterlo fisso, sempre se non danno fastidio i link rossi. PersOnLine 18:07, 1 dic 2007 (CET)[rispondi]
Beh, se decidiamo che i link rossi danno fastidio, dovremmo sostituire in ogni articolo ogni wikilink [[pagina]] con un template {{#ifexist: {{{1|}}}|[[{{{1|}}}]]|{{{1|}}}}}, e lì sono casini davvero!
A parte gli scherzi, anche ammesso che qualcuno scarichi il dump, installi Mediawiki, aggiorni all'ultimissima versione, installi tutte le estensioni che ci sono su Wikipedia, carichi in mysql il dump... poi nella sua versione ci sarà il messaggio di debugging sugli ifexist? O magari gli sviluppatori l'hanno infilato solo su Wikipedia? --Toobaz rispondi 03:57, 2 dic 2007 (CET)[rispondi]
Al momento l'idea migliore che mi viene è: scarico un dump, con pywikipedia creo un bot che lavora in locale e, con una funzione ricorsiva, ad ogni pagina associa il numero di #ifexist: che contiene (richiamandosi su ogni template incluso). Non sarebbe complicato da fare. Certo, ci metterebbe poi parecchio a girare, ma il problema principale non è questo: è che darebbe solo una stima di massima: se un template ha un #ifexists e in ognuno dei due rami dell'#ifexists ha un #ifexist, questo programmino li conterebbe entrambi. Però non mi vengono in mente casi patologici in cui il programmino dovrebbe allontanarsi molto dalla realtà. Ovviamente di valutare effettivamente i vari template nei valori con cui vengono chiamati non se ne parla, perché significa in pratica riscrivere Mediawiki. --Toobaz rispondi 04:04, 2 dic 2007 (CET)[rispondi]
Del problema tecnico del bot ne stanno parlando in Wikipedia:Bot/Richieste#.23ifexist:. La stima di massima va bene, per le nostre esigenze--Bultro 10:30, 2 dic 2007 (CET)[rispondi]
A quanto ho visto da questo elenco noi abbiamo problemi per il template Bandierina e il template cita web. Ogni template bandierina è 1 ifexist mentre cita web ne usa due. Dato che gli ifexist non mi sembrano indispensabili nei template io sarei per rimuoverli visto che sono template molto usati e fanno sforare molte pagine. Hellis 12:26, 2 dic 2007 (CET)[rispondi]
Ho rimesso a posto l'elenco (che riguarda gli sforamenti rilevati sulle pagine modificate) e l'analisi di Hellis mi sembra corretta. Lo riporto qui sotto, cassettato per comodità. Attenzione che c'è anche qualche pagina di servizio da rivedere, ad esempio gli UP. --Lp 13:39, 2 dic 2007 (CET)[rispondi]
Elenco delle pagine segnalate nel log




(Torno a sx) Ho recentemente messo le mani nel template {{Bandierina}}: faccio notare che gli ifexist sono due, e servono a visualizzare la bandierina "segnaposto" se il codice introdotto è inesistente; il template è molto meno usato del template {{Bandiera}}, che utilizza un ifexist per utilizzare il codice introdotto se la sottopagina corrispondente non esiste. Tra l'altro, ne avevo già proposto la modifica qui. Cosa facciamo? Eliminiamo il segnaposto e la visualizzazione alternativa nei due template?
Pensiamo anche a cosa fare con {{Tl}} (tra l'altro, il codice è alleggeribile con {{!}}). --gvnn scrivimi! 20:25, 2 dic 2007 (CET)[rispondi]

Aggiornamento: migliorato il template {{Bandierina}}, ora ha un solo ifexist. Bisognerebbe ricontrollare la lista qui su, per vedere se facciamo progressi. --gvnn scrivimi! 20:38, 2 dic 2007 (CET)[rispondi]

Gli ifexist contati non sono quelli inclusi nel codice ma quelli usati e a quanto ho visto mediamente il template ne usava uno. Hellis 21:42, 2 dic 2007 (CET)[rispondi]
Comunque hai ragione anche il template Bandiera ne usa uno e genera problemi. Per esempio la voce FIFA 07 ne usa 248 di ifexist e a quanto ho visto sono generati dal template bandiera. Potremmo prelevare quello di en.wiki e provare ad adattarlo, se noi abbiamo problemi figuriamoci loro e quindi magari hanno già risolto il problema. Hellis 21:50, 2 dic 2007 (CET)[rispondi]
Probabilmente sì dato che la loro en:FIFA_07 ne utilizza 0 (zero)...--Shan (You talkin' to me?) 10:14, 3 dic 2007 (CET)[rispondi]
L'omologo sulla en.wiki del nostro bandiera è veramente molto più complicato, non ho guardato il codice, ma il sistema è generalmente più complesso e flessibile. Sarebbe bello portarlo qui, ma il lavoro richiesto non è indifferente, credo (ma sono a disposizione). Comunque sto andando OT, temo. =D --gvnn scrivimi! 10:15, 3 dic 2007 (CET)[rispondi]
Non siamo off-topic, i nostri template non vanno bene, i loro si. Dato che dobbiamo riscrivere i nostri e visto che i loro vanno bene potremmo provare a portarli. Hellis 11:00, 3 dic 2007 (CET)[rispondi]
(conflittato) Sorbole se è flessibile :) , bravi tutti a non avere #ifexist se hanno un template per ogni Stato immaginabile.. --Shan (You talkin' to me?) 11:05, 3 dic 2007 (CET) no, mi correggo, è generato in automatico da en:Template:Country showdata, ma c'è ancora qualcosa che mi sfugge.. --Shan (You talkin' to me?) 11:08, 3 dic 2007 (CET) mi ricorreggo di nuovo: sì, hanno un template con parametri per ogni Stato, ma la sostanza non cambia: semplicemente non hanno nessun ifexist nei template flag, flagicon, country data, etc, e se vengono richiamati con un parametro (Stato) non valido fanno il classico errore da template non trovato. --Shan (You talkin' to me?) 12:09, 3 dic 2007 (CET)[rispondi]
Beh, per ora potremmo semplicemente sopprimere gli ifexist in bandiera e bandierina, e se in futuro salta fuori la volontà, importiamo l'extra-mega sistema en.wiki. Procediamo? --gvnn scrivimi! 12:19, 3 dic 2007 (CET)[rispondi]
SI, e dopo bisogna agire su cita web, cita news e compagnia bella, altri template molto usati che mediamente usano 2 ifexist per template.Hellis 12:38, 3 dic 2007 (CET)[rispondi]

(Torno a sx)

C'e qualcosa che non va FIFA 07 comunque mostra ancora 200 ifexist, sembra che le bandiera porti ancora un ifexist. Hellis 13:37, 3 dic 2007 (CET)[rispondi]
Per forza: in FIFA 07 è utilizzato il template:bandiera, che essendo protetto non ho potuto modificare. --gvnn scrivimi! 13:53, 3 dic 2007 (CET)[rispondi]
Ok, segnalo nella discussione del template questo post e se domani non ci sono obiezioni lo modifico io. Hellis 14:12, 3 dic 2007 (CET)[rispondi]
Mi chiedo, visto che bisognerà comunque modificarlo, se è utile avere sia {{Bandiera}} che {{Bandierina}}. Il primo da la possibilità di inserire una bandierina (eventualmente bordata) a 20px e volendo il nome dello stato, il secondo una bandierina (eventualmente bordata) alla dimensione precisata (default=20px). In pratica fanno la stessa cosa per le bandierine (con la differenza che nel secondo caso si può anche scegliere la dimensione della bandierina e nel primo se mettere o meno il nome dello stato). Inoltre per bandierina+nome sono presenti alcuni template appositi coi codici CIO (e non). Se questa funzionalità la dovesse svolgere anche bandiera (come avviene ora) ci sarebbero dei template ridondanti o una funzionalità già svolta da altri template e quindi per certi versi superflua (IMHO, visto anche il largo utilizzo, restano più comodi i vari template coi codici) --Simo82 (scrivimi) 15:36, 3 dic 2007 (CET)[rispondi]

A monte, stavo osservando l'elenco delle voci, e ho notato qualcosa di strano: la voce Perché non sono cristiano totalizza ben 149 ifexist. Gran parte del merito è da attribuire al template {{S}}, che se non ho capito male ne fa 10 al giro, e che è inserito in ogni capitolo del libro. Che fare in questi casi? mettere mano al template o semplicemente seccarne via un kg/un kg e mezzo dalla voce? --Shan (You talkin' to me?) 15:04, 3 dic 2007 (CET)[rispondi]

Probabilmente il "problema" (per così dire) è che in una voce di 18 sezioni 14 sono stub (14x10 = 140!). Forsè sarebbe meglio segnalara tutta come stub oppure (meglio ancora) destubizzarla o creare una sola sezione segnata come stub (es: "l'opera", "trama" o qualcosa del genere con all'interno la suddivisione in capitoli). --Simo82 (scrivimi) 15:36, 3 dic 2007 (CET)[rispondi]

Uhm, vi espongo un caso problematico. Una delle pagine con più 100 ifexist è la voce Naruto, questa è un caso particolare. Infatti quegli ifexist esistono per risolvere un problema ancora più grave. Infatti la pagina, tempo fa, non generava più la stringa delle categorie, riportando una serie di codici. Non capendo nessuno il problema (ho interpellato molti in chan, tra cui anche Sannita) che non sono riusciti a trovarlo. Dopo un pò Xander89 ha stubizzato tutti i template bandiera ed il problema si è risolto...ma mi pongo una domanda. Se togliamo gli ifexist in quella voce va a farsi friggere la stringa delle categorie (a meno che quel giorno non c'era un problema in wiki tanto da generare quell'errore), quindi che fare? --DarkAp89Kimimonogatari 15:11, 3 dic 2007 (CET)[rispondi]

(Conflittato) Il totale su Naruto è 232, gli #ifexist nel codice sono una ventina... si possono anche sistemare, ma il problema secondo me è un altro... tipo i 92 {{cita web}} ad esempio :) --Shan (You talkin' to me?) 15:44, 3 dic 2007 (CET)[rispondi]
Si ma allora come mai stubizzando i template bandiera, è scomparso il problema della mancata visualizzazione delle categorie? Comunque, per i cita web, si possono anche ridurre, ma alla fine la voce subirebbe un mini danno, IMHO. Proprio non si poteva evitare questa cosa aggiorando wiki, eh? :P. Vorrei sapere, di là, in EN come stanno attualmente risolvendo il problema. Magari, potremmo trarre qualche spunto positivo nelle azioni che stanno compiendo nell'edizione in lingua inglese. --DarkAp89Kimimonogatari 16:03, 3 dic 2007 (CET)[rispondi]
A mio avviso invece sarebbero da eliminare, se possibile, gli #ifexist dal {{cita web}}, non mi sembra logico segare riferimenti da una voce al vaglio per colpa del template... --Shan (You talkin' to me?) 16:22, 3 dic 2007 (CET)[rispondi]
Allora eliminiamoli, questi ifexist! Al massimo l'utente si troverà un wikilink rosso, e lo correggerà, no? Se mi date l'ok provvedo. --gvnn scrivimi! 16:33, 3 dic 2007 (CET)[rispondi]
Per me ok. Per la cronaca su en.wiki per il corrispettivo di {{cita web}} (cite web) non hanno di questi problemi visto che già non usa #ifexist (da noi utilizzato mi pare per i formati dei file esterni). Per le bandierine il discorso è lo stesso, niente #ifexist (in questo caso toglierlo come fatto per {{bandierina}} non creerà IMHO nessun problemi, in futuro al massimo qualche (raro) link rosso (da valutare però, per i motivi spiegati poco sopra, se può essere utile avere bandiera, bandierina e i template coi codici ISO oppure qualcosa è di troppo). --Simo82 (scrivimi) 16:39, 3 dic 2007 (CET)[rispondi]
+1 anche per me. --Shan (You talkin' to me?) 16:52, 3 dic 2007 (CET)[rispondi]