Brion Vibber wrote:
I'd be kind of inclined to separate out the Skin and Linker worlds a bit further; really, the HTML formatting of links and such doesn't depend on the user (except in some edge cases like stub links which could in principle be done differently). The surrounding *skin* depends on the user settings, but having to dive into a User object to get a Linker feels messy, especially if we're rendering a wiki page to go into a common cache.
IIRC the biggest remaining use case for link rendering actually being customized by skin was for the special skin used for creating static HTML dumps.
If we had another way to do that, and normalized stub linking in some way (say, by always sticking a magic class on and letting CSS deal with it) it might be cleaner to avoid having to touch a Skin object unless you're actually doing final HTML output. (This may be a bigger project though. :D)
I filed two bugs after reading this: * Avoid parser cache fragmentation[1] * Remove stub link formatting user preference from MediaWiki core[2]
MZMcBride
[1] https://bugzilla.wikimedia.org/show_bug.cgi?id=28424 [2] https://bugzilla.wikimedia.org/show_bug.cgi?id=28426