MediaWiki 1.21/wmf8

The latest version (labeled "1.21wmf8") of MediaWiki, the software that powers Wikipedia and its sister sites, is being deployed to all Wikimedia sites in stages, starting on Wednesday, 16 January 2013 (see the roadmap).

We will continue to deploy the latest software every two weeks. This is intended to minimize disruption and possible issues, and make it easier to identify the cause of problems, since the possibly problematic code will be much more recent.

Core changes

 * - Catch excpt to avoid fatal in Message::__toString
 * - Added transclusion count to InfoAction.
 * - Live preview no longer experimental
 * - [JobQueue] Added support for using an external DB.
 * - Language::listToText cleanup with unit test
 * - [JobQueue] Some tweaks to reduce claimRandom retries.
 * - Update docs
 * - php maintenance/language/rebuildLanguage.php --lang=en
 * - Follow-up I0e5d3cfb: Spelling consistency update
 * - Disable protection in case there aren't any restriction types
 * - (minor) Make ORMTable handle failed queries nicely.
 * - Make EditFilterMergedContent more generic.
 * - Revert &quot;Also delete the page information cache when invalidating cache of a non-existing page&quot;
 * - Remove docs for hook LoggableUserIPData
 * - Added $wgMaxBacklinksInvalidate to avoid massive html cache invalidation.
 * - Don't bother creating a new context in SpecialPageFactory::getUsablePages
 * - Remove orphan call to wfProfileOut
 * - Added category information to InfoAction.
 * - Some fixes for Ia2782d64 (2f60cd2)
 * - New methods to drop or rename extension index in DatabaseUpdater
 * - [JobQueue] Increment stats for jobs ignored as duplicates.
 * - Made the profilers that output text not break js.
 * - Partial normalisation of hooks.txt
 * - recentchanges.rc_ip is used for retroactive autoblocks
 * - Use nocookiesfornew on account creation if no cookies
 * - Use Database::addQuotes instead of hardcoded quotes
 * - Use consistent hashing for SqlBagOStuff servers
 * - Explicitely add two undocumented hooks
 * - Partial normalisation of hooks.txt
 * - Don't block non-existent users via the API
 * - Reuse the WikiPage object to save a db query
 * - Move logentry-* messages from newusers and rights log near the other ones
 * - (zhtable) Add zh2Hans: '这么' =&gt; '这么' for better segmentation
 * - Follow-up Idf308e82 (e88b0fb): use wfMessage and numParams
 * - Don't convert blue categorylinks to another variant.
 * - zhtable maintenance
 * - Use getPageViewLanguage instead of getPageLanguage in firstHeading.
 * - Localize autosummary of page protecting
 * - Makes WebRequest::detectProtocolAndStdPort take HTTP_X_FORWARDED_PROTO headers into account
 * - Add months and years to Timestamp::getHumanTimestamp
 * - [JobQueue] Made showJobs.php work for non-DB queues.
 * - Block::parseTarget accepts and can return null
 * - Add test for substitution of params with multiple digits
 * - Show changed bits on file version (oldimage) revdel logs.
 * - [JobQueue] Clarified documentation a bit.
 * - Pass $user from WikiPage::getContent to Revision::getContent
 * - Fix Sqlite upgrade test when profiling to database is enabled
 * - Set $mLoadedItems to true in User::loadFromId
 * - Use Html::rawElement instead of hardcoded string in Special:Contributions
 * - Multiple servers in one SqlBagOStuff
 * - Follow-up I9c7aa3b2 (b28c7a8): fix one more validation error
 * - Don't run database updates for shared tables unless --doshared is provided
 * - Cursor of enhancedchangelist wrong for non-toggle lines
 * - Cleaned up and optimized wfBaseConvert;
 * - Normalise inline comment markers to &quot;//&quot; in WikiPage.php
 * - Also delete the page information cache when invalidating cache of a non-existing page
 * - Update CREDITS
 * - Remove &quot;read&quot; from list of allowed actions on special pages
 * - Use proper function recursiveConvertTopLevel in recursive conversion
 * - [FileBackend] Improved some header related docs.
 * - make MovePage aware of whether redirects are supported.
 * - Follow-up I5f7f6da0 (cefb9ef): pass the User parameter to more LogEventsList::getExcludeClause calls
 * - Parser test to test language conversion around HTML tags.

README

 * Newly deployed extension