Wikipédia:Esplanada/geral/Evitando problemas nos tópicos das esplanadas (12jan2011)

Origem: Wikipédia, a enciclopédia livre.

Evitando problemas nos tópicos das esplanadas (12jan2011)

Depois de fazer alguns testes, fui audaz e atualizei as predefinições usadas nas esplanadas ([1] e [2]), para que o limite no tamanho de inclusão de predefinições não seja excedido tão rápido (e então não seja necessário improvisar). A título de comparação, nos testes iniciais a diferença foi bastante grande:

  • Na versão antiga, ao abrir o código-fonte da página (em HTML), aparecia: Post-expand include size: 1945447/2048000 bytes.
  • Na versão nova, o valor passou a ser: Post-expand include size: 562249/2048000 bytes

(ou, fazendo a conta, para ficar mais visível, em vez de usarmos 94% do limite que o MediaWiki aceita, passamos a usar somente 27%, ou seja, a comunidade poderá conversar bem mais antes de termos problemas , e possívelmente os tópicos mais longos terão tempo suficiente para serem resolvidos).

A página da Wikipédia inglesa, en:Wikipedia:Template limits explica em linhas gerais o motivo para isso ocorrer, e o problema está registrado no bugzilla:13260.

Para conseguir a economia do limite mencionado acima, o que mudou foi o seguinte:

  • Cada tópico da esplanada aparece separado em duas linhas: uma para o cabeçalho e outra para a "transclusão" do código com {{:nome do tópico}}. Assim, o MediaWiki não contará o tamanho de cada tópico mais de uma vez (se entendi direito, ele contava 4 vezes (!) o comprimento de cada tópico, por causa dos #ifs e do #switch da {{Discussão2}}).

Por enquanto, ao criar um novo tópico, logo abaixo da linha "Este é um tópico novo. Se foi você quem o começou, ..." que aparece antes da página ser efetivamente criada (por exemplo no ao pré-visualizar a edição), estará visível uma ligação vermelha para a tal página. Se acharem que ela é inconveniente (já que nela não estará embutido o preload que carrega o texto padrão exibido no topo dos tópicos de discussão), basta um admin acrescentar o seguinte CSS ao MediaWiki:Common.css:

div.aviso-novo-item-esplanada {
	font-style: italic;
}
div.aviso-novo-item-esplanada + p>a.new {
	display:none;
}

PS: ainda falta atualizar a sintaxe nos arquivos de conversas anteriores já foi atualizada. Se alguém estiver com o AWB por aí, a A expressão regular a ser usada para "localizar e substituir" foi mencionada no sumário desta edição e é foi a seguinte:

  • Localizar: /\{\{discussão2\|(.+?)\|(.+?)\|(.+?)\}\}\n/g
  • Substituir por: {{discussão2|$1|$2|$3}}\n{{:$3/$1 ($2)}}\n

Espero que a situação melhore Helder 17h59min de 12 de janeiro de 2011 (UTC)[responder]

Ótima solução Helder Alegre Mas como fez para o total da página (Com as predefinições inclusas)? -!864!Silent_29A (Contact) 18h19min de 12 de janeiro de 2011 (UTC)[responder]
Desculpe, mas não entendi a pergunta. Como fiz "o que" para o total da página? Helder 19h53min de 12 de janeiro de 2011 (UTC)[responder]
Escrevi rápido: Como você fez pra ver o tamanho total da página (Com as predefinições inclusas)? -!864!Silent_29A (Contact) 20h26min de 12 de janeiro de 2011 (UTC)[responder]
Ah tá. Só que os números acima não indicam "o" tamanho da página, mas sim uma estimativa do tamanho do código wiki que resultaria se todas as "predefinições", variáveis etc... estivessem expandidas na página, que o MediaWiki usa para evitar que pessoas mal intencionadas criem predefinições que façam o servidor ficar processando a página indefinidamente. Mas as páginas também tem outros "tamanhos", conforme comentei neste tópico. Se abrir o código fonte desta página (no Firefox, clicar com o botão direito e escolher "Código-fonte") verá que no HTML da página há um comentário do tipo
<!-- 
NewPP limit report
Preprocessor node count: 129/1000000
Post-expand include size: 3084/2048000 bytes
Template argument size: 436/2048000 bytes
Expensive parser function count: 0/500
-->
As alterações que fiz serviram para reduzir (drasticamente) somente o valor do "Post-expand include size" para as páginas que usam a {{Discussão2}}. Os problemas das esplanadas apareciam justamente quando o valor chegava muito próximo de 2048000 (ou até mesmo ultrapassavam este valor). Em parte, a culpa é daquele bug do MediaWiki, que conta várias vezes o tamanho do mesmo código em certos casos. Por exemplo, se uma predefinição tivesse somente o código "{{#if: TESTE | {{Página de exemplo}} }}", então o tamanho da "Página de exemplo" seria somado duas vezes ao calcular "Post-expand include size". Helder 21h05min de 12 de janeiro de 2011 (UTC)[responder]
Ah ok, entendi. -!864!Silent_29A (Contact) 21h13min de 12 de janeiro de 2011 (UTC)[responder]
A propósito, falando em tamanho da página: felizmente numa das próximas atualizações do MediaWiki aquele aviso sobre o tamanho das páginas que tem mais de 32k deixará de aparecer (por padrão). Pelo menos assim fica claro que o tal aviso é só para indicar que a real barreira são as "políticas locais", não as supostas "limitações técnicas". Aí só as wikis que tiverem alguma política específica a respeito do tamanho é que exibirão algum tipo de aviso, e o tamanho mínimo será configurável, para que se possa escolher um valor que faça sentido e seja mais adequado à realidade dos editores de cada wiki...
Para detalhes sobre isso, ver r77148 e Bug 21911. Helder 00h23min de 13 de janeiro de 2011 (UTC)[responder]