Last modified: 2008-08-15 05:45:09 UTC
There are two issues with what Semantic Forms is doing with Message Loading.
Firstly an incorrect test is used to check for the existence of the system:
if (version_compare($wgVersion, '1.11', '>=' ))
Is not the correct method, this is:
if( method_exists('wfLoadExtensionMessages') )
It's possible for someone to have a alpha version of 1.11 which has not yet been updated to the revision where the extension message system was introduced. Using this check does handle all cases correctly.
But that's the minor issue.
The real issue is that Semantic Forms is short-circuiting the whole system, and effectively making the new system useless because SF is acting the same as if the system didn't exist:
After checking if the system exists, SF adds to the list:
$wgExtensionMessagesFiles['SemanticForms'] = $sfgIP . '/languages/SF_Messages.php';
However, inside of an extension function, it goes and runs:
This is NOT the correct way to do this.
Effectively, this means that all messages are loaded, on every page view, all the time. Even in later versions of MediaWiki where the system exists with the point of not doing that.
wfLoadExtensionMessages is only supposed to be run when you need those messages. In essence, you only use it when you initialize a special page, or are somewhere you need to call wfMsg.
I believe this is fixed, as of the latest version, 1.2.6; could you please verify this?
Marking as fixed.
Nope, it wasn't fixed.
As of r39383 I believe I have the bug fixed. Poke me if you start seeing any <messagename>'s around.