MediaWiki 1.31 is a future release of MediaWiki.
Consult the RELEASE-NOTES file for the full list of changes.
It is currently deployed on Wikimedia Foundation wikis through incremental "wmf"-branches starting 26 September 2017.
The 1.31.0 stable release is expected to come out on sometime in June 2018.
MessageBlobStore::insertMessageBlob() (deprecated in 1.27) was removed.
The global function wfBCP47 was renamed to LanguageCode::bcp47.
The global function wfBCP47 is now deprecated.
The global function wfCountDown() is now deprecated in favor of Maintenance::countDown()
The OutputPage class constructor now requires a context parameter, (instantiating without context was deprecated in 1.18)
mw.page (deprecated in 1.30) was removed.
Article::getLastPurgeTimestamp(), WikiPage::getLastPurgeTimestamp(), and the related WikiPage::PURGE_* constants, deprecated in 1.29, were removed.
The Article::selectFields(), Article::onArticleCreate(), Article::onArticleDelete(), and Article::onArticleEdit() methods, deprecated in 1.24, were removed.
Installer::locateExecutable() and Installer::locateExecutableInDefaultPaths() were removed, use ExecutableFinder::findInDefaultPaths() instead.
Several methods for returning lists of fields to select from the database have been deprecated in favor of similar methods that also return the tables to select from and the join conditions for those tables.
Due to significant refactoring, method ContribsPager::getUserCond() that had no access restriction has been removed.
Revision::setUserIdAndName() was deprecated.
Access to TitleValue class properties was deprecated, the relevant getters should be used instead.
DifferenceEngine::getDiffBodyCacheKey() is deprecated. Subclasses should override DifferenceEngine::getDiffBodyCacheKeyParams() instead.
The deprecated MW_DIFF_VERSION constant was removed. DifferenceEngine::MW_DIFF_VERSION should be used instead.
Use of Maintenance::error( $err, $die ) to exit script was deprecated. Use Maintenance::fatalError() instead.
Passing a ParserOptions object to OutputPage::parserOptions() is deprecated.
Browser support for Opera 12 and older was removed. Opera 15+ continues at Grade A support.
The Block class will no longer accept usable-but-missing usernames for 'byText' or ->setBlocker(). Callers should either ensure the blocker exists locally or use a new interwiki-format username like "iw>Example".
The following methods that get and set ParserOutput state are deprecated. Callers should use the new stateless $options parameter to ParserOutput::getText() instead.
The public ParserOutput state fields $mTOCEnabled and $mEditSectionTokens are also deprecated.
The following methods and constants from the WatchedItem class were deprecated in 1.27 have been removed.