enterprisemediawiki / HeaderFooter

Add common headers and footers to MediaWiki pages
http://www.mediawiki.org/wiki/Extension:Header_Footer
6 stars 18 forks source link

Make use of the parser cache #7

Closed imerr closed 7 years ago

imerr commented 9 years ago

Thing may take a long time to parse, especially with complex templates

Code probably isnt the best, I dont know my way around mediawiki much - suggestions are welcome

jamesmontalvo3 commented 9 years ago

I haven't had a chance to run this yet. It significantly improves performance?

imerr commented 9 years ago

For us it brought down the load time from 3s to basically nothing (150ms, as fast as it gets really) Not to mention not overloading the server with a few requests a second. Template in use: http://wiki.industrial-craft.net/index.php?title=Template:Navigation (cant say anything about the template quality, I only do the hosting)

jamesmontalvo3 commented 9 years ago

I haven't forgotten about this, I simply haven't had a chance to run it myself. I'm pretty sure it'll break our main use case, which is pulling dynamic content from Semantic MediaWiki into a footer. So the code may require tweaking to allow it as an option.

jamesmontalvo3 commented 9 years ago

From what I can tell this is not allowing parser functions to operate within the footer, which breaks many use cases. For example, in the Semantic Meeting Minutes extension we encourage a footer of the form:

{{#ask: [[Has topic title::+]][[Related article::{{PAGENAME}}]]
|mainlabel=-
|? From page
|? Has date
|? Has topic title
|? Synopsis
|? Related article
|link = none
|format = template
|template = Meeting references row
|intro = <h1>Meeting References</h1>
|offset = 0
|limit = 10
|sort = Has date
|order = desc
|searchlabel = <br />Click to browse earlier meeting references
}}

Static content displays fine, but this parser function has no output when using this pull request.

imerr commented 9 years ago

That's a bummer Not really sure what to do from here on then, using the mediawiki caching (if applicable) would be a nice feature to have. Like I said I'm not well versed with mediawiki and I couldn't really find many resources on it at the time

Maybe making this an optional feature would be an idea?

jamesmontalvo3 commented 9 years ago

I agree that it'd be a nice feature to include. I'll ask some more experienced MediaWiki developers to take a look. I'd prefer to minimize the number of options and instead have it smartly use the cache, if possible. Also, I plan on moving this into the Wikipedia Foundation's Gerrit system soon, which should make it easier to get experienced people looking at it. On Jun 29, 2015 5:04 PM, "Robin Rolf" notifications@github.com wrote:

That's a bummer Not really sure what to do from here on then, using the mediawiki caching (if applicable) would be a nice feature to have. Like I said I'm not well versed with mediawiki and I couldn't really find many resources on it at the time

Maybe making this an optional feature would be an idea?

— Reply to this email directly or view it on GitHub https://github.com/enterprisemediawiki/HeaderFooter/pull/7#issuecomment-116860410 .

imerr commented 7 years ago

As far as I can tell this just works in mediawiki 1.29 - seems like they did optimize caching along the way Not to mention my old optimization does not work anymore So I'm gonna close this

jamesmontalvo3 commented 7 years ago

Great. Thanks for the info.