I'm missing something obvious - how do I rebuild the system messages in 1.4?
In 1.3 I would call "php.exe rebuildmessages.php" which would do the job for me. But in 1.4 I get prompted to update or rebuild. From the description provided for these I'm not sure which one does what :-(
What do I need to call to simply refresh the messages based on our updated Special:Allmessages ?
Cheers,
al.
Alistair Johnson wrote:
I'm missing something obvious - how do I rebuild the system messages in 1.4?
In 1.3 I would call "php.exe rebuildmessages.php" which would do the job for me. But in 1.4 I get prompted to update or rebuild. From the description provided for these I'm not sure which one does what :-(
In 1.3 you would receive this prompt on running that script without parameters:
1. Update messages to include latest additions to Language.php 2. Delete all messages and reinitialise namespace 3. Quit
Please enter a number:
This interactive prompt has been replaced in 1.4 with a required command-line option (it used to be optional, now required) to specify the action. This was done for two reasons: first, frequent output buffering problems, particularly for some running on Windows, made the prompt highly unreliable. This lead to a number of support requests where people were unable to see the prompt and reported the script simply hanging. Second, a prompt is generally hard to work with in a scripting environment where hundreds of wikis are run in bulk; since that's MediaWiki's primary target, I changed it to a more standard command-line interface.
The two available actions, however, are exactly the same as they were in 1.3:
Action must be one of: --update Update messages to include latest additions to Language.php --rebuild Delete all messages and reinitialise namespace
Update (--update) will not change any messages which were last edited by some actual user; it will only update those last edited by 'Mediawiki default' (those imported on install or when running rebuildMessages.php or update.php previously).
Rebuild (--rebuild) will wipe out and replace *every* defined message page in the database with the Language*.php definition.
What do I need to call to simply refresh the messages based on our updated Special:Allmessages ?
Special:Allmessages is a list of messages comparing the defined defaults from the Language*.php files with the contents of the MediaWiki: messages. When you edit a MediaWiki: message page, the message cache _should_ automatically update from your edit to that page. You shouldn't have to do anything special or separate. If you are having trouble though, try a --rebuild.
Also check that the language selections are correct. There may be oddities if user preferences are somehow set for the wrong language.
-- brion vibber (brion @ pobox.com)
mediawiki-l@lists.wikimedia.org