summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitreview2
-rw-r--r--.jshintignore8
-rw-r--r--.jshintrc34
-rw-r--r--COPYING38
-rw-r--r--CREDITS18
-rw-r--r--HISTORY335
-rw-r--r--README143
l---------[-rw-r--r--]README.mediawiki123
-rw-r--r--RELEASE-NOTES-1.21443
-rw-r--r--RELEASE-NOTES-1.22610
-rw-r--r--UPGRADE15
-rw-r--r--api.php12
-rw-r--r--composer-example.json11
-rw-r--r--composer.json30
-rw-r--r--docs/hooks.txt190
-rw-r--r--docs/maintenance.txt4
-rw-r--r--docs/php-memcached/Documentation2
-rw-r--r--docs/scripts.txt10
-rw-r--r--docs/skin.txt68
-rw-r--r--docs/title.txt8
-rw-r--r--docs/uidesign/child-selector-emu.html3
-rw-r--r--docs/uidesign/design.html7
-rw-r--r--docs/uidesign/mediawiki.action.history.diff.html7
-rw-r--r--docs/uidesign/monospace.html5
-rw-r--r--docs/uidesign/table-layout.html3
-rw-r--r--docs/upload.txt2
-rw-r--r--extensions/Cite/.jshintignore1
-rw-r--r--extensions/Cite/.jshintrc34
-rw-r--r--extensions/Cite/Cite.i18n.php1281
-rw-r--r--extensions/Cite/Cite.php44
-rw-r--r--extensions/Cite/Cite_body.php27
-rw-r--r--extensions/Cite/SpecialCite.alias.php13
-rw-r--r--extensions/Cite/SpecialCite.i18n.php584
-rw-r--r--extensions/Cite/SpecialCite.php6
-rw-r--r--extensions/Cite/citeCatTreeParserTests.txt27
-rw-r--r--extensions/Cite/citeParserTests.txt36
-rw-r--r--extensions/Cite/modules/ext.cite.css16
-rw-r--r--extensions/Cite/modules/ext.cite.js38
-rw-r--r--extensions/Cite/modules/ext.cite.popups.js13
-rw-r--r--extensions/Cite/modules/ext.cite/ext.cite.js12
-rw-r--r--extensions/Cite/modules/ext.rtlcite.css (renamed from extensions/Cite/modules/ext.rtlcite/ext.rtlcite.css)0
-rw-r--r--extensions/Cite/modules/ext.specialcite.css (renamed from extensions/Cite/modules/ext.specialcite/ext.specialcite.css)0
-rw-r--r--extensions/ConfirmEdit/ApiFancyCaptchaReload.php2
-rw-r--r--extensions/ConfirmEdit/Asirra.class.php2
-rw-r--r--extensions/ConfirmEdit/Asirra.i18n.php315
-rw-r--r--extensions/ConfirmEdit/Captcha.php88
-rw-r--r--extensions/ConfirmEdit/ConfirmEdit.alias.php8
-rw-r--r--extensions/ConfirmEdit/ConfirmEdit.i18n.php440
-rw-r--r--extensions/ConfirmEdit/FancyCaptcha.i18n.php932
-rw-r--r--extensions/ConfirmEdit/FancyCaptcha.php11
-rw-r--r--extensions/ConfirmEdit/MathCaptcha.class.php2
-rw-r--r--extensions/ConfirmEdit/QuestyCaptcha.i18n.php634
-rw-r--r--extensions/ConfirmEdit/ReCaptcha.i18n.php422
-rw-r--r--extensions/ConfirmEdit/blacklist40
-rw-r--r--extensions/ConfirmEdit/captcha.py14
-rw-r--r--extensions/ConfirmEdit/resources/ext.confirmEdit.asirra.js7
-rw-r--r--extensions/FluxBBAuthPlugin.php7
-rw-r--r--extensions/Gadgets/ApiQueryGadgets.php4
-rw-r--r--extensions/Gadgets/GadgetHooks.php257
-rw-r--r--extensions/Gadgets/Gadgets.alias.php13
-rw-r--r--extensions/Gadgets/Gadgets.i18n.php348
-rw-r--r--extensions/Gadgets/Gadgets.php4
-rw-r--r--extensions/Gadgets/Gadgets_body.php264
-rw-r--r--extensions/Gadgets/README2
-rw-r--r--extensions/ImageMap/ImageMap.i18n.php65
-rw-r--r--extensions/ImageMap/ImageMap.php16
-rw-r--r--extensions/ImageMap/ImageMap_body.php6
-rw-r--r--extensions/InputBox/InputBox.i18n.php88
-rw-r--r--extensions/Interwiki/Interwiki.alias.php11
-rw-r--r--extensions/Interwiki/Interwiki.i18n.php355
-rw-r--r--extensions/Interwiki/Interwiki.php13
-rw-r--r--extensions/Interwiki/Interwiki_body.php90
-rw-r--r--extensions/LocalisationUpdate/LocalisationUpdate.class.php16
-rw-r--r--extensions/LocalisationUpdate/LocalisationUpdate.i18n.php13
-rw-r--r--extensions/LocalisationUpdate/LocalisationUpdate.php6
-rw-r--r--extensions/Nuke/Nuke.alias.php8
-rw-r--r--extensions/Nuke/Nuke.i18n.php308
-rw-r--r--extensions/ParserFunctions/ParserFunctions.i18n.magic.php190
-rw-r--r--extensions/ParserFunctions/ParserFunctions.i18n.php131
-rw-r--r--extensions/ParserFunctions/ParserFunctions_body.php6
-rw-r--r--extensions/PdfHandler/PdfHandler.i18n.php53
-rw-r--r--extensions/PdfHandler/PdfHandler_body.php2
-rw-r--r--extensions/Poem/Poem.i18n.php14
-rw-r--r--extensions/README2
-rw-r--r--extensions/Renameuser/README2
-rw-r--r--extensions/Renameuser/Renameuser.alias.php17
-rw-r--r--extensions/Renameuser/Renameuser.i18n.php275
-rw-r--r--extensions/Renameuser/RenameuserSQL.php2
-rw-r--r--extensions/SimpleAntiSpam/SimpleAntiSpam.i18n.php37
-rw-r--r--extensions/SpamBlacklist/README31
-rw-r--r--extensions/SpamBlacklist/SpamBlacklist.i18n.php670
-rw-r--r--extensions/SpamBlacklist/SpamBlacklist.php33
-rw-r--r--extensions/SpamBlacklist/SpamBlacklistHooks.php125
-rw-r--r--extensions/SpamBlacklist/SpamBlacklist_body.php90
-rw-r--r--extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.class.php48
-rw-r--r--extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.i18n.php35
-rw-r--r--extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php5
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi.php2
-rw-r--r--extensions/SyntaxHighlight_GeSHi/geshi/geshi/haskell.php10
-rw-r--r--extensions/TitleBlacklist/TitleBlacklist.i18n.php137
-rw-r--r--extensions/TitleBlacklist/TitleBlacklist.list.php20
-rw-r--r--extensions/TitleBlacklist/TitleBlacklist.php4
-rw-r--r--extensions/TitleBlacklist/tests/ApiQueryTitleBlacklistTest.php22
-rw-r--r--extensions/TitleBlacklist/tests/testSource1
-rw-r--r--extensions/Vector/.gitreview5
-rw-r--r--extensions/Vector/README17
-rw-r--r--extensions/Vector/Vector.hooks.php174
-rw-r--r--extensions/Vector/Vector.i18n.php2467
-rw-r--r--extensions/Vector/Vector.php129
-rw-r--r--extensions/Vector/modules/ext.vector.collapsibleNav.css92
-rw-r--r--extensions/Vector/modules/ext.vector.collapsibleNav.js253
-rw-r--r--extensions/Vector/modules/ext.vector.collapsibleTabs.js29
-rw-r--r--extensions/Vector/modules/ext.vector.expandableSearch.css11
-rw-r--r--extensions/Vector/modules/ext.vector.expandableSearch.js72
-rw-r--r--extensions/Vector/modules/ext.vector.footerCleanup.js31
-rw-r--r--extensions/Vector/modules/ext.vector.sectionEditLinks.css19
-rw-r--r--extensions/Vector/modules/ext.vector.sectionEditLinks.js66
-rw-r--r--extensions/Vector/modules/images/edit-faded.pngbin425 -> 0 bytes
-rw-r--r--extensions/Vector/modules/images/edit.pngbin428 -> 0 bytes
-rw-r--r--extensions/Vector/modules/images/portal-break.pngbin203 -> 0 bytes
-rw-r--r--extensions/Vector/modules/jquery.footerCollapsibleList.js44
-rw-r--r--extensions/Vector/switchExperimentPrefs.php63
-rw-r--r--extensions/WikiEditor/.jshintignore2
-rw-r--r--extensions/WikiEditor/.jshintrc32
-rw-r--r--extensions/WikiEditor/WikiEditor.hooks.php8
-rw-r--r--extensions/WikiEditor/WikiEditor.i18n.php2031
-rw-r--r--extensions/WikiEditor/WikiEditor.php1
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.css9
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.dialogs.js7
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.highlight.js3
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.js3
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.preview.js3
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.previewDialog.js3
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.publish.js3
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.templateEditor.js19
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.templates.js19
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.tests.toolbar.js16
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.toc.js3
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.toolbar.hideSig.js4
-rw-r--r--extensions/WikiEditor/modules/ext.wikiEditor.toolbar.js3
-rw-r--r--extensions/WikiEditor/modules/images/dialogs/insert-disambiguation.pngbin0 -> 831 bytes
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.css3
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.dialogs.config.css8
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.dialogs.config.js124
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.dialogs.js34
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.highlight.js41
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.iframe.js202
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.js44
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.preview.js15
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.previewDialog.js15
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.publish.js13
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.templateEditor.js137
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.templates.js51
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.toc.js136
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.toolbar.config.js10
-rw-r--r--extensions/WikiEditor/modules/jquery.wikiEditor.toolbar.js98
-rw-r--r--img_auth.php8
-rw-r--r--includes/Action.php57
-rw-r--r--includes/AjaxDispatcher.php10
-rw-r--r--includes/AjaxResponse.php2
-rw-r--r--includes/ArrayUtils.php2
-rw-r--r--includes/Article.php147
-rw-r--r--includes/AuthPlugin.php13
-rw-r--r--includes/AutoLoader.php147
-rw-r--r--includes/Autopromote.php5
-rw-r--r--includes/Block.php308
-rw-r--r--includes/CallableUpdate.php30
-rw-r--r--includes/Category.php3
-rw-r--r--includes/CategoryPage.php8
-rw-r--r--includes/CategoryViewer.php60
-rw-r--r--includes/Cdb.php4
-rw-r--r--includes/Cdb_PHP.php16
-rw-r--r--includes/ChangeTags.php75
-rw-r--r--includes/ChangesFeed.php37
-rw-r--r--includes/ChangesList.php1304
-rw-r--r--includes/Collation.php22
-rw-r--r--includes/ConfEditor.php55
-rw-r--r--includes/Cookie.php7
-rw-r--r--includes/DataUpdate.php4
-rw-r--r--includes/DefaultSettings.php1309
-rw-r--r--includes/DeferredUpdates.php12
-rw-r--r--includes/Defines.php11
-rw-r--r--includes/EditPage.php290
-rw-r--r--includes/Exception.php275
-rw-r--r--includes/Export.php33
-rw-r--r--includes/ExternalEdit.php132
-rw-r--r--includes/ExternalUser.php309
-rw-r--r--includes/Fallback.php28
-rw-r--r--includes/Feed.php26
-rw-r--r--includes/FeedUtils.php27
-rw-r--r--includes/FileDeleteForm.php36
-rw-r--r--includes/ForkController.php4
-rw-r--r--includes/FormOptions.php163
-rw-r--r--includes/GitInfo.php39
-rw-r--r--includes/GlobalFunctions.php675
-rw-r--r--includes/HTMLForm.php541
-rw-r--r--includes/HashRing.php142
-rw-r--r--includes/HistoryBlob.php35
-rw-r--r--includes/Hooks.php282
-rw-r--r--includes/Html.php179
-rw-r--r--includes/HtmlFormatter.php356
-rw-r--r--includes/HttpFunctions.php118
-rw-r--r--includes/IP.php32
-rw-r--r--includes/ImagePage.php49
-rw-r--r--includes/ImageQueryPage.php25
-rw-r--r--includes/Import.php135
-rw-r--r--includes/Init.php150
-rw-r--r--includes/Licenses.php2
-rw-r--r--includes/LinkFilter.php4
-rw-r--r--includes/Linker.php103
-rw-r--r--includes/LinksUpdate.php154
-rw-r--r--includes/MWCryptRand.php (renamed from includes/CryptRand.php)2
-rw-r--r--includes/MWFunction.php34
-rw-r--r--includes/MagicWord.php23
-rw-r--r--includes/MappedIterator.php88
-rw-r--r--includes/Message.php212
-rw-r--r--includes/Metadata.php28
-rw-r--r--includes/MimeMagic.php88
-rw-r--r--includes/Namespace.php6
-rw-r--r--includes/OutputHandler.php80
-rw-r--r--includes/OutputPage.php476
-rw-r--r--includes/PHPVersionError.php12
-rw-r--r--includes/PageQueryPage.php5
-rw-r--r--includes/Pager.php140
-rw-r--r--includes/PathRouter.php10
-rw-r--r--includes/PoolCounter.php221
-rw-r--r--includes/Preferences.php541
-rw-r--r--includes/PrefixSearch.php40
-rw-r--r--includes/ProtectionForm.php110
-rw-r--r--includes/ProxyTools.php40
-rw-r--r--includes/QueryPage.php92
-rw-r--r--includes/Revision.php265
-rw-r--r--includes/RevisionList.php5
-rw-r--r--includes/Sanitizer.php361
-rw-r--r--includes/ScopedCallback.php41
-rw-r--r--includes/SeleniumWebSettings.php221
-rw-r--r--includes/Setup.php153
-rw-r--r--includes/SiteConfiguration.php58
-rw-r--r--includes/SiteStats.php126
-rw-r--r--includes/Skin.php202
-rw-r--r--includes/SkinLegacy.php882
-rw-r--r--includes/SkinTemplate.php346
-rw-r--r--includes/SpecialPage.php160
-rw-r--r--includes/SpecialPageFactory.php15
-rw-r--r--includes/SqlDataUpdate.php2
-rw-r--r--includes/StatCounter.php150
-rw-r--r--includes/Status.php91
-rw-r--r--includes/StreamFile.php1
-rw-r--r--includes/StringUtils.php135
-rw-r--r--includes/StubObject.php25
-rw-r--r--includes/Timestamp.php267
-rw-r--r--includes/Title.php528
-rw-r--r--includes/UIDGenerator.php35
-rw-r--r--includes/User.php1151
-rw-r--r--includes/UserArray.php2
-rw-r--r--includes/UserMailer.php53
-rw-r--r--includes/UserRightsProxy.php10
-rw-r--r--includes/WatchedItem.php65
-rw-r--r--includes/WebRequest.php187
-rw-r--r--includes/WebResponse.php121
-rw-r--r--includes/WebStart.php52
-rw-r--r--includes/Wiki.php145
-rw-r--r--includes/WikiError.php2
-rw-r--r--includes/WikiFilePage.php4
-rw-r--r--includes/WikiMap.php20
-rw-r--r--includes/WikiPage.php632
-rw-r--r--includes/Xml.php221
-rw-r--r--includes/XmlTypeCheck.php86
-rw-r--r--includes/ZhClient.php6
-rw-r--r--includes/ZipDirectoryReader.php2
-rw-r--r--includes/actions/CreditsAction.php15
-rw-r--r--includes/actions/EditAction.php14
-rw-r--r--includes/actions/HistoryAction.php51
-rw-r--r--includes/actions/InfoAction.php69
-rw-r--r--includes/actions/PurgeAction.php4
-rw-r--r--includes/actions/RawAction.php29
-rw-r--r--includes/actions/WatchAction.php62
-rw-r--r--includes/api/ApiBase.php119
-rw-r--r--includes/api/ApiBlock.php2
-rw-r--r--includes/api/ApiComparePages.php8
-rw-r--r--includes/api/ApiCreateAccount.php52
-rw-r--r--includes/api/ApiDelete.php3
-rw-r--r--includes/api/ApiEditPage.php59
-rw-r--r--includes/api/ApiExpandTemplates.php4
-rw-r--r--includes/api/ApiFeedContributions.php15
-rw-r--r--includes/api/ApiFeedWatchlist.php90
-rw-r--r--includes/api/ApiFormatBase.php8
-rw-r--r--includes/api/ApiFormatJson.php24
-rw-r--r--includes/api/ApiFormatWddx.php75
-rw-r--r--includes/api/ApiFormatXml.php137
-rw-r--r--includes/api/ApiImageRotate.php32
-rw-r--r--includes/api/ApiImport.php6
-rw-r--r--includes/api/ApiMain.php36
-rw-r--r--includes/api/ApiMove.php4
-rw-r--r--includes/api/ApiOpenSearch.php21
-rw-r--r--includes/api/ApiOptions.php8
-rw-r--r--includes/api/ApiPageSet.php18
-rw-r--r--includes/api/ApiParamInfo.php6
-rw-r--r--includes/api/ApiParse.php157
-rw-r--r--includes/api/ApiPatrol.php46
-rw-r--r--includes/api/ApiProtect.php3
-rw-r--r--includes/api/ApiPurge.php29
-rw-r--r--includes/api/ApiQuery.php10
-rw-r--r--includes/api/ApiQueryAllCategories.php4
-rw-r--r--includes/api/ApiQueryAllImages.php4
-rw-r--r--includes/api/ApiQueryAllLinks.php116
-rw-r--r--includes/api/ApiQueryAllMessages.php2
-rw-r--r--includes/api/ApiQueryAllPages.php7
-rw-r--r--includes/api/ApiQueryAllUsers.php4
-rw-r--r--includes/api/ApiQueryBacklinks.php15
-rw-r--r--includes/api/ApiQueryBase.php4
-rw-r--r--includes/api/ApiQueryBlocks.php61
-rw-r--r--includes/api/ApiQueryCategories.php5
-rw-r--r--includes/api/ApiQueryCategoryMembers.php6
-rw-r--r--includes/api/ApiQueryDeletedrevs.php6
-rw-r--r--includes/api/ApiQueryDuplicateFiles.php23
-rw-r--r--includes/api/ApiQueryExtLinksUsage.php6
-rw-r--r--includes/api/ApiQueryExternalLinks.php8
-rw-r--r--includes/api/ApiQueryFileRepoInfo.php115
-rw-r--r--includes/api/ApiQueryFilearchive.php8
-rw-r--r--includes/api/ApiQueryIWBacklinks.php4
-rw-r--r--includes/api/ApiQueryIWLinks.php13
-rw-r--r--includes/api/ApiQueryImageInfo.php80
-rw-r--r--includes/api/ApiQueryInfo.php20
-rw-r--r--includes/api/ApiQueryLangBacklinks.php9
-rw-r--r--includes/api/ApiQueryLangLinks.php17
-rw-r--r--includes/api/ApiQueryLogEvents.php24
-rw-r--r--includes/api/ApiQueryORM.php4
-rw-r--r--includes/api/ApiQueryPagesWithProp.php2
-rw-r--r--includes/api/ApiQueryProtectedTitles.php2
-rw-r--r--includes/api/ApiQueryQueryPage.php19
-rw-r--r--includes/api/ApiQueryRandom.php4
-rw-r--r--includes/api/ApiQueryRecentChanges.php43
-rw-r--r--includes/api/ApiQueryRevisions.php29
-rw-r--r--includes/api/ApiQuerySearch.php39
-rw-r--r--includes/api/ApiQuerySiteinfo.php62
-rw-r--r--includes/api/ApiQueryTags.php7
-rw-r--r--includes/api/ApiQueryUserContributions.php21
-rw-r--r--includes/api/ApiQueryUserInfo.php20
-rw-r--r--includes/api/ApiQueryUsers.php6
-rw-r--r--includes/api/ApiQueryWatchlist.php95
-rw-r--r--includes/api/ApiQueryWatchlistRaw.php4
-rw-r--r--includes/api/ApiRsd.php2
-rw-r--r--includes/api/ApiSetNotificationTimestamp.php7
-rw-r--r--includes/api/ApiUpload.php84
-rw-r--r--includes/api/ApiUserrights.php7
-rw-r--r--includes/api/ApiWatch.php11
-rw-r--r--includes/cache/BacklinkCache.php134
-rw-r--r--includes/cache/CacheDependency.php2
-rw-r--r--includes/cache/FileCacheBase.php6
-rw-r--r--includes/cache/GenderCache.php14
-rw-r--r--includes/cache/HTMLCacheUpdate.php11
-rw-r--r--includes/cache/HTMLFileCache.php4
-rw-r--r--includes/cache/LinkBatch.php4
-rw-r--r--includes/cache/LinkCache.php68
-rw-r--r--includes/cache/LocalisationCache.php96
-rw-r--r--includes/cache/MessageCache.php729
-rw-r--r--includes/cache/ResourceFileCache.php2
-rw-r--r--includes/cache/SquidUpdate.php197
-rw-r--r--includes/cache/UserCache.php13
-rw-r--r--includes/changes/ChangesList.php552
-rw-r--r--includes/changes/EnhancedChangesList.php662
-rw-r--r--includes/changes/OldChangesList.php130
-rw-r--r--includes/changes/RCCacheEntry.php (renamed from redirect.php5)19
-rw-r--r--includes/changes/RecentChange.php (renamed from includes/RecentChange.php)232
-rw-r--r--includes/clientpool/RedisConnectionPool.php90
-rw-r--r--includes/content/Content.php14
-rw-r--r--includes/content/ContentHandler.php19
-rw-r--r--includes/content/CssContent.php2
-rw-r--r--includes/content/JavaScriptContent.php2
-rw-r--r--includes/content/TextContent.php2
-rw-r--r--includes/content/WikitextContent.php3
-rw-r--r--includes/content/WikitextContentHandler.php19
-rw-r--r--includes/context/ContextSource.php2
-rw-r--r--includes/context/DerivativeContext.php25
-rw-r--r--includes/context/IContextSource.php2
-rw-r--r--includes/context/RequestContext.php19
-rw-r--r--includes/db/ChronologyProtector.php106
-rw-r--r--includes/db/CloneDatabase.php18
-rw-r--r--includes/db/Database.php517
-rw-r--r--includes/db/DatabaseError.php202
-rw-r--r--includes/db/DatabaseMssql.php190
-rw-r--r--includes/db/DatabaseMysql.php933
-rw-r--r--includes/db/DatabaseMysqlBase.php1154
-rw-r--r--includes/db/DatabaseMysqli.php194
-rw-r--r--includes/db/DatabaseOracle.php92
-rw-r--r--includes/db/DatabasePostgres.php98
-rw-r--r--includes/db/DatabaseSqlite.php49
-rw-r--r--includes/db/DatabaseUtility.php3
-rw-r--r--includes/db/IORMRow.php24
-rw-r--r--includes/db/LBFactory.php94
-rw-r--r--includes/db/LBFactory_Multi.php6
-rw-r--r--includes/db/LoadBalancer.php104
-rw-r--r--includes/db/LoadMonitor.php27
-rw-r--r--includes/db/ORMRow.php182
-rw-r--r--includes/db/ORMTable.php211
-rw-r--r--includes/debug/Debug.php74
-rw-r--r--includes/diff/DairikiDiff.php40
-rw-r--r--includes/diff/DifferenceEngine.php205
-rw-r--r--includes/extauth/Hardcoded.php84
-rw-r--r--includes/extauth/MediaWiki.php168
-rw-r--r--includes/extauth/vB.php146
-rw-r--r--includes/externalstore/ExternalStore.php57
-rw-r--r--includes/externalstore/ExternalStoreDB.php142
-rw-r--r--includes/externalstore/ExternalStoreMedium.php19
-rw-r--r--includes/externalstore/ExternalStoreMwstore.php23
-rw-r--r--includes/filebackend/FSFile.php29
-rw-r--r--includes/filebackend/FSFileBackend.php117
-rw-r--r--includes/filebackend/FileBackend.php143
-rw-r--r--includes/filebackend/FileBackendGroup.php28
-rw-r--r--includes/filebackend/FileBackendMultiWrite.php179
-rw-r--r--includes/filebackend/FileBackendStore.php576
-rw-r--r--includes/filebackend/FileOp.php193
-rw-r--r--includes/filebackend/FileOpBatch.php6
-rw-r--r--includes/filebackend/README2
-rw-r--r--includes/filebackend/SwiftFileBackend.php262
-rw-r--r--includes/filebackend/TempFSFile.php6
-rw-r--r--includes/filebackend/filejournal/DBFileJournal.php10
-rw-r--r--includes/filebackend/lockmanager/DBLockManager.php37
-rw-r--r--includes/filebackend/lockmanager/LockManager.php125
-rw-r--r--includes/filebackend/lockmanager/LockManagerGroup.php4
-rw-r--r--includes/filebackend/lockmanager/MemcLockManager.php41
-rw-r--r--includes/filebackend/lockmanager/QuorumLockManager.php140
-rw-r--r--includes/filebackend/lockmanager/RedisLockManager.php288
-rw-r--r--includes/filebackend/lockmanager/ScopedLock.php44
-rw-r--r--includes/filerepo/FSRepo.php14
-rw-r--r--includes/filerepo/FileRepo.php108
-rw-r--r--includes/filerepo/ForeignAPIRepo.php226
-rw-r--r--includes/filerepo/ForeignDBRepo.php5
-rw-r--r--includes/filerepo/LocalRepo.php42
-rw-r--r--includes/filerepo/RepoGroup.php12
-rw-r--r--includes/filerepo/file/ArchivedFile.php23
-rw-r--r--includes/filerepo/file/File.php37
-rw-r--r--includes/filerepo/file/ForeignAPIFile.php49
-rw-r--r--includes/filerepo/file/ForeignDBFile.php5
-rw-r--r--includes/filerepo/file/LocalFile.php234
-rw-r--r--includes/filerepo/file/OldLocalFile.php3
-rw-r--r--includes/gallery/ImageGalleryBase.php (renamed from includes/ImageGallery.php)239
-rw-r--r--includes/gallery/NolinesImageGallery.php (renamed from skins/MySkin.php)27
-rw-r--r--includes/gallery/PackedImageGallery.php105
-rw-r--r--includes/gallery/PackedOverlayImageGallery.php60
-rw-r--r--includes/gallery/TraditionalImageGallery.php328
-rw-r--r--includes/installer/CliInstaller.php9
-rw-r--r--includes/installer/DatabaseInstaller.php64
-rw-r--r--includes/installer/DatabaseUpdater.php156
-rw-r--r--includes/installer/InstallDocFormatter.php12
-rw-r--r--includes/installer/Installer.i18n.php1959
-rw-r--r--includes/installer/Installer.php298
-rw-r--r--includes/installer/LocalSettingsGenerator.php59
-rw-r--r--includes/installer/MysqlInstaller.php135
-rw-r--r--includes/installer/MysqlUpdater.php516
-rw-r--r--includes/installer/OracleInstaller.php61
-rw-r--r--includes/installer/OracleUpdater.php72
-rw-r--r--includes/installer/PhpBugTests.php2
-rw-r--r--includes/installer/PostgresInstaller.php62
-rw-r--r--includes/installer/PostgresUpdater.php575
-rw-r--r--includes/installer/SqliteInstaller.php38
-rw-r--r--includes/installer/SqliteUpdater.php121
-rw-r--r--includes/installer/WebInstaller.php208
-rw-r--r--includes/installer/WebInstallerOutput.php112
-rw-r--r--includes/installer/WebInstallerPage.php259
-rw-r--r--includes/job/Job.php56
-rw-r--r--includes/job/JobQueue.php355
-rw-r--r--includes/job/JobQueueDB.php688
-rw-r--r--includes/job/JobQueueFederated.php473
-rw-r--r--includes/job/JobQueueGroup.php90
-rw-r--r--includes/job/JobQueueRedis.php856
-rw-r--r--includes/job/aggregator/JobQueueAggregator.php (renamed from includes/job/JobQueueAggregator.php)17
-rw-r--r--includes/job/aggregator/JobQueueAggregatorMemc.php (renamed from includes/job/JobQueueAggregatorMemc.php)11
-rw-r--r--includes/job/aggregator/JobQueueAggregatorRedis.php (renamed from includes/job/JobQueueAggregatorRedis.php)28
-rw-r--r--includes/job/jobs/AssembleUploadChunksJob.php19
-rw-r--r--includes/job/jobs/DoubleRedirectJob.php29
-rw-r--r--includes/job/jobs/DuplicateJob.php2
-rw-r--r--includes/job/jobs/EnotifNotifyJob.php2
-rw-r--r--includes/job/jobs/HTMLCacheUpdateJob.php25
-rw-r--r--includes/job/jobs/NullJob.php16
-rw-r--r--includes/job/jobs/PublishStashedFileJob.php22
-rw-r--r--includes/job/jobs/RefreshLinksJob.php28
-rw-r--r--includes/job/jobs/UploadFromUrlJob.php7
-rw-r--r--includes/json/FormatJson.php217
-rw-r--r--includes/json/Services_JSON.php882
-rw-r--r--includes/libs/CSSJanus.php72
-rw-r--r--includes/libs/CSSMin.php47
-rw-r--r--includes/libs/HttpStatus.php2
-rw-r--r--includes/libs/lessc.inc.php3742
-rw-r--r--includes/limit.sh9
-rw-r--r--includes/logging/DeleteLogFormatter.php196
-rw-r--r--includes/logging/LogEntry.php55
-rw-r--r--includes/logging/LogEventsList.php82
-rw-r--r--includes/logging/LogFormatter.php412
-rw-r--r--includes/logging/LogPage.php62
-rw-r--r--includes/logging/LogPager.php77
-rw-r--r--includes/logging/MoveLogFormatter.php82
-rw-r--r--includes/logging/NewUsersLogFormatter.php65
-rw-r--r--includes/logging/PatrolLog.php7
-rw-r--r--includes/logging/PatrolLogFormatter.php63
-rw-r--r--includes/logging/RightsLogFormatter.php112
-rw-r--r--includes/media/BMP.php6
-rw-r--r--includes/media/Bitmap.php47
-rw-r--r--includes/media/BitmapMetadataHandler.php24
-rw-r--r--includes/media/DjVu.php21
-rw-r--r--includes/media/DjVuImage.php44
-rw-r--r--includes/media/Exif.php76
-rw-r--r--includes/media/ExifBitmap.php8
-rw-r--r--includes/media/FormatMetadata.php101
-rw-r--r--includes/media/GIF.php8
-rw-r--r--includes/media/GIFMetadataExtractor.php46
-rw-r--r--includes/media/IPTC.php8
-rw-r--r--includes/media/ImageHandler.php23
-rw-r--r--includes/media/Jpeg.php20
-rw-r--r--includes/media/JpegMetadataExtractor.php22
-rw-r--r--includes/media/MediaHandler.php149
-rw-r--r--includes/media/MediaTransformOutput.php53
-rw-r--r--includes/media/PNG.php13
-rw-r--r--includes/media/PNGMetadataExtractor.php30
-rw-r--r--includes/media/SVG.php92
-rw-r--r--includes/media/SVGMetadataExtractor.php64
-rw-r--r--includes/media/Tiff.php2
-rw-r--r--includes/media/XCF.php6
-rw-r--r--includes/media/XMP.php26
-rw-r--r--includes/media/XMPInfo.php6
-rw-r--r--includes/media/XMPValidate.php12
-rw-r--r--includes/mime.info4
-rw-r--r--includes/mime.types5
-rw-r--r--includes/normal/README10
-rw-r--r--includes/normal/RandomTest.php6
-rw-r--r--includes/normal/UtfNormal.php4
-rw-r--r--includes/normal/UtfNormalTest.php8
-rw-r--r--includes/normal/UtfNormalTest2.php2
-rw-r--r--includes/normal/UtfNormalUtil.php8
-rw-r--r--includes/objectcache/BagOStuff.php8
-rw-r--r--includes/objectcache/MemcachedBagOStuff.php2
-rw-r--r--includes/objectcache/MemcachedClient.php24
-rw-r--r--includes/objectcache/MemcachedPeclBagOStuff.php14
-rw-r--r--includes/objectcache/MultiWriteBagOStuff.php2
-rw-r--r--includes/objectcache/ObjectCache.php14
-rw-r--r--includes/objectcache/ObjectCacheSessionHandler.php2
-rw-r--r--includes/objectcache/RedisBagOStuff.php40
-rw-r--r--includes/objectcache/SqlBagOStuff.php22
-rw-r--r--includes/parser/CacheTime.php2
-rw-r--r--includes/parser/CoreLinkFunctions.php92
-rw-r--r--includes/parser/CoreParserFunctions.php197
-rw-r--r--includes/parser/CoreTagHooks.php2
-rw-r--r--includes/parser/DateFormatter.php24
-rw-r--r--includes/parser/LinkHolderArray.php216
-rw-r--r--includes/parser/Parser.php848
-rw-r--r--includes/parser/ParserCache.php20
-rw-r--r--includes/parser/ParserOptions.php21
-rw-r--r--includes/parser/ParserOutput.php111
-rw-r--r--includes/parser/Parser_DiffTest.php2
-rw-r--r--includes/parser/Parser_LinkHooks.php326
-rw-r--r--includes/parser/Preprocessor_DOM.php99
-rw-r--r--includes/parser/Preprocessor_Hash.php61
-rw-r--r--includes/parser/Tidy.php11
-rw-r--r--includes/profiler/Profiler.php264
-rw-r--r--includes/profiler/ProfilerSimple.php5
-rw-r--r--includes/profiler/ProfilerSimpleText.php12
-rw-r--r--includes/profiler/ProfilerSimpleTrace.php2
-rw-r--r--includes/profiler/ProfilerSimpleUDP.php12
-rw-r--r--includes/profiler/ProfilerStub.php2
-rw-r--r--includes/rcfeed/IRCColourfulRCFeedFormatter.php99
-rw-r--r--includes/rcfeed/JSONRCFeedFormatter.php90
-rw-r--r--includes/rcfeed/RCFeedEngine.php12
-rw-r--r--includes/rcfeed/RCFeedFormatter.php13
-rw-r--r--includes/rcfeed/RedisPubSubFeedEngine.php41
-rw-r--r--includes/rcfeed/UDPRCFeedEngine.php10
-rw-r--r--includes/resourceloader/ResourceLoader.php181
-rw-r--r--includes/resourceloader/ResourceLoaderContext.php2
-rw-r--r--includes/resourceloader/ResourceLoaderFileModule.php176
-rw-r--r--includes/resourceloader/ResourceLoaderLESSFunctions.php67
-rw-r--r--includes/resourceloader/ResourceLoaderLanguageDataModule.php31
-rw-r--r--includes/resourceloader/ResourceLoaderModule.php102
-rw-r--r--includes/resourceloader/ResourceLoaderSiteModule.php23
-rw-r--r--includes/resourceloader/ResourceLoaderStartUpModule.php10
-rw-r--r--includes/resourceloader/ResourceLoaderUserCSSPrefsModule.php67
-rw-r--r--includes/resourceloader/ResourceLoaderUserGroupsModule.php15
-rw-r--r--includes/resourceloader/ResourceLoaderUserModule.php21
-rw-r--r--includes/resourceloader/ResourceLoaderUserOptionsModule.php4
-rw-r--r--includes/resourceloader/ResourceLoaderUserTokensModule.php9
-rw-r--r--includes/resourceloader/ResourceLoaderWikiModule.php4
-rw-r--r--includes/revisiondelete/RevisionDelete.php86
-rw-r--r--includes/revisiondelete/RevisionDeleteAbstracts.php50
-rw-r--r--includes/revisiondelete/RevisionDeleteUser.php2
-rw-r--r--includes/revisiondelete/RevisionDeleter.php149
-rw-r--r--includes/search/SearchEngine.php169
-rw-r--r--includes/search/SearchMssql.php6
-rw-r--r--includes/search/SearchMySQL.php66
-rw-r--r--includes/search/SearchOracle.php86
-rw-r--r--includes/search/SearchPostgres.php43
-rw-r--r--includes/search/SearchSqlite.php39
-rw-r--r--includes/search/SearchUpdate.php123
-rw-r--r--includes/site/MediaWikiSite.php8
-rw-r--r--includes/site/SiteSQLStore.php52
-rw-r--r--includes/specials/SpecialActiveusers.php74
-rw-r--r--includes/specials/SpecialAllmessages.php143
-rw-r--r--includes/specials/SpecialAllpages.php174
-rw-r--r--includes/specials/SpecialAncientpages.php22
-rw-r--r--includes/specials/SpecialBlankpage.php1
-rw-r--r--includes/specials/SpecialBlock.php49
-rw-r--r--includes/specials/SpecialBlockList.php52
-rw-r--r--includes/specials/SpecialBlockme.php66
-rw-r--r--includes/specials/SpecialBooksources.php49
-rw-r--r--includes/specials/SpecialBrokenRedirects.php12
-rw-r--r--includes/specials/SpecialCachedPage.php1
-rw-r--r--includes/specials/SpecialCategories.php38
-rw-r--r--includes/specials/SpecialChangeEmail.php67
-rw-r--r--includes/specials/SpecialChangePassword.php134
-rw-r--r--includes/specials/SpecialComparePages.php11
-rw-r--r--includes/specials/SpecialConfirmemail.php101
-rw-r--r--includes/specials/SpecialContributions.php380
-rw-r--r--includes/specials/SpecialDeadendpages.php25
-rw-r--r--includes/specials/SpecialDeletedContributions.php179
-rw-r--r--includes/specials/SpecialDisambiguations.php165
-rw-r--r--includes/specials/SpecialDoubleRedirects.php31
-rw-r--r--includes/specials/SpecialEditWatchlist.php174
-rw-r--r--includes/specials/SpecialEmailuser.php82
-rw-r--r--includes/specials/SpecialExport.php143
-rw-r--r--includes/specials/SpecialFewestrevisions.php53
-rw-r--r--includes/specials/SpecialFileDuplicateSearch.php51
-rw-r--r--includes/specials/SpecialFilepath.php62
-rw-r--r--includes/specials/SpecialImport.php245
-rw-r--r--includes/specials/SpecialJavaScriptTest.php56
-rw-r--r--includes/specials/SpecialLinkSearch.php71
-rw-r--r--includes/specials/SpecialListfiles.php301
-rw-r--r--includes/specials/SpecialListgrouprights.php51
-rw-r--r--includes/specials/SpecialListredirects.php34
-rw-r--r--includes/specials/SpecialListusers.php113
-rw-r--r--includes/specials/SpecialLog.php79
-rw-r--r--includes/specials/SpecialLonelypages.php48
-rw-r--r--includes/specials/SpecialLongpages.php1
-rw-r--r--includes/specials/SpecialMIMEsearch.php97
-rw-r--r--includes/specials/SpecialMergeHistory.php118
-rw-r--r--includes/specials/SpecialMostcategories.php48
-rw-r--r--includes/specials/SpecialMostimages.php19
-rw-r--r--includes/specials/SpecialMostinterwikis.php32
-rw-r--r--includes/specials/SpecialMostlinked.php69
-rw-r--r--includes/specials/SpecialMostlinkedcategories.php32
-rw-r--r--includes/specials/SpecialMostlinkedtemplates.php39
-rw-r--r--includes/specials/SpecialMovepage.php263
-rw-r--r--includes/specials/SpecialNewimages.php40
-rw-r--r--includes/specials/SpecialNewpages.php156
-rw-r--r--includes/specials/SpecialPagesWithProp.php32
-rw-r--r--includes/specials/SpecialPasswordReset.php94
-rw-r--r--includes/specials/SpecialPopularpages.php34
-rw-r--r--includes/specials/SpecialPreferences.php26
-rw-r--r--includes/specials/SpecialPrefixindex.php147
-rw-r--r--includes/specials/SpecialProtectedpages.php169
-rw-r--r--includes/specials/SpecialProtectedtitles.php80
-rw-r--r--includes/specials/SpecialRandomInCategory.php291
-rw-r--r--includes/specials/SpecialRandompage.php31
-rw-r--r--includes/specials/SpecialRandomredirect.php1
-rw-r--r--includes/specials/SpecialRecentchanges.php410
-rw-r--r--includes/specials/SpecialRecentchangeslinked.php63
-rw-r--r--includes/specials/SpecialRedirect.php235
-rw-r--r--includes/specials/SpecialResetTokens.php145
-rw-r--r--includes/specials/SpecialRevisiondelete.php170
-rw-r--r--includes/specials/SpecialSearch.php198
-rw-r--r--includes/specials/SpecialShortpages.php18
-rw-r--r--includes/specials/SpecialSpecialpages.php17
-rw-r--r--includes/specials/SpecialStatistics.php37
-rw-r--r--includes/specials/SpecialTags.php69
-rw-r--r--includes/specials/SpecialUnblock.php22
-rw-r--r--includes/specials/SpecialUncategorizedcategories.php6
-rw-r--r--includes/specials/SpecialUncategorizedimages.php2
-rw-r--r--includes/specials/SpecialUncategorizedpages.php13
-rw-r--r--includes/specials/SpecialUndelete.php680
-rw-r--r--includes/specials/SpecialUnusedcategories.php15
-rw-r--r--includes/specials/SpecialUnusedimages.php16
-rw-r--r--includes/specials/SpecialUnusedtemplates.php16
-rw-r--r--includes/specials/SpecialUnwatchedpages.php16
-rw-r--r--includes/specials/SpecialUpload.php126
-rw-r--r--includes/specials/SpecialUploadStash.php29
-rw-r--r--includes/specials/SpecialUserlogin.php369
-rw-r--r--includes/specials/SpecialUserrights.php162
-rw-r--r--includes/specials/SpecialVersion.php203
-rw-r--r--includes/specials/SpecialWantedcategories.php18
-rw-r--r--includes/specials/SpecialWantedfiles.php16
-rw-r--r--includes/specials/SpecialWantedtemplates.php14
-rw-r--r--includes/specials/SpecialWatchlist.php192
-rw-r--r--includes/specials/SpecialWhatlinkshere.php69
-rw-r--r--includes/specials/SpecialWithoutinterwiki.php28
-rw-r--r--includes/templates/NoLocalSettings.php14
-rw-r--r--includes/templates/Usercreate.php445
-rw-r--r--includes/templates/Userlogin.php278
-rw-r--r--includes/tidy.conf2
-rw-r--r--includes/upload/UploadBase.php202
-rw-r--r--includes/upload/UploadFromChunks.php26
-rw-r--r--includes/upload/UploadFromFile.php2
-rw-r--r--includes/upload/UploadFromStash.php6
-rw-r--r--includes/upload/UploadFromUrl.php49
-rw-r--r--includes/upload/UploadStash.php29
-rw-r--r--index.php16
-rw-r--r--languages/Language.php500
-rw-r--r--languages/LanguageConverter.php84
-rw-r--r--languages/Names.php46
-rw-r--r--languages/classes/LanguageAz.php2
-rw-r--r--languages/classes/LanguageBe_tarask.php12
-rw-r--r--languages/classes/LanguageCu.php27
-rw-r--r--languages/classes/LanguageEo.php70
-rw-r--r--languages/classes/LanguageEs.php (renamed from languages/classes/LanguageTl.php)24
-rw-r--r--languages/classes/LanguageFi.php6
-rw-r--r--languages/classes/LanguageGa.php21
-rw-r--r--languages/classes/LanguageGan.php47
-rw-r--r--languages/classes/LanguageGv.php4
-rw-r--r--languages/classes/LanguageHi.php44
-rw-r--r--languages/classes/LanguageHr.php8
-rw-r--r--languages/classes/LanguageHy.php12
-rw-r--r--languages/classes/LanguageIu.php20
-rw-r--r--languages/classes/LanguageKaa.php6
-rw-r--r--languages/classes/LanguageKk.php52
-rw-r--r--languages/classes/LanguageKk_cyrl.php62
-rw-r--r--languages/classes/LanguageKsh.php20
-rw-r--r--languages/classes/LanguageKu.php64
-rw-r--r--languages/classes/LanguageLa.php90
-rw-r--r--languages/classes/LanguageMg.php44
-rw-r--r--languages/classes/LanguageMk.php49
-rw-r--r--languages/classes/LanguageMt.php48
-rw-r--r--languages/classes/LanguageNso.php44
-rw-r--r--languages/classes/LanguageOs.php38
-rw-r--r--languages/classes/LanguagePl.php25
-rw-r--r--languages/classes/LanguageSh.php58
-rw-r--r--languages/classes/LanguageShi.php36
-rw-r--r--languages/classes/LanguageSk.php49
-rw-r--r--languages/classes/LanguageSl.php27
-rw-r--r--languages/classes/LanguageSr.php40
-rw-r--r--languages/classes/LanguageSr_ec.php8
-rw-r--r--languages/classes/LanguageSr_el.php8
-rw-r--r--languages/classes/LanguageTg.php4
-rw-r--r--languages/classes/LanguageTi.php44
-rw-r--r--languages/classes/LanguageTr.php4
-rw-r--r--languages/classes/LanguageTyv.php2
-rw-r--r--languages/classes/LanguageUk.php37
-rw-r--r--languages/classes/LanguageUz.php10
-rw-r--r--languages/classes/LanguageWa.php42
-rw-r--r--languages/classes/LanguageZh.php58
-rw-r--r--languages/classes/LanguageZh_hans.php2
-rw-r--r--languages/data/plurals-mediawiki.xml7
-rw-r--r--languages/data/plurals.xml2
-rw-r--r--languages/messages/MessagesAce.php49
-rw-r--r--languages/messages/MessagesAeb.php26
-rw-r--r--languages/messages/MessagesAf.php234
-rw-r--r--languages/messages/MessagesAln.php43
-rw-r--r--languages/messages/MessagesAm.php66
-rw-r--r--languages/messages/MessagesAn.php86
-rw-r--r--languages/messages/MessagesAng.php51
-rw-r--r--languages/messages/MessagesAr.php260
-rw-r--r--languages/messages/MessagesArc.php48
-rw-r--r--languages/messages/MessagesArn.php10
-rw-r--r--languages/messages/MessagesAry.php62
-rw-r--r--languages/messages/MessagesArz.php81
-rw-r--r--languages/messages/MessagesAs.php171
-rw-r--r--languages/messages/MessagesAst.php288
-rw-r--r--languages/messages/MessagesAvk.php49
-rw-r--r--languages/messages/MessagesAy.php1
-rw-r--r--languages/messages/MessagesAz.php83
-rw-r--r--languages/messages/MessagesAzb.php173
-rw-r--r--languages/messages/MessagesBa.php260
-rw-r--r--languages/messages/MessagesBar.php36
-rw-r--r--languages/messages/MessagesBbc.php12
-rw-r--r--languages/messages/MessagesBbc_latn.php734
-rw-r--r--languages/messages/MessagesBcc.php64
-rw-r--r--languages/messages/MessagesBcl.php250
-rw-r--r--languages/messages/MessagesBe.php98
-rw-r--r--languages/messages/MessagesBe_tarask.php268
-rw-r--r--languages/messages/MessagesBg.php184
-rw-r--r--languages/messages/MessagesBho.php86
-rw-r--r--languages/messages/MessagesBi.php23
-rw-r--r--languages/messages/MessagesBjn.php64
-rw-r--r--languages/messages/MessagesBn.php255
-rw-r--r--languages/messages/MessagesBo.php5
-rw-r--r--languages/messages/MessagesBpy.php42
-rw-r--r--languages/messages/MessagesBqi.php2
-rw-r--r--languages/messages/MessagesBr.php239
-rw-r--r--languages/messages/MessagesBrh.php2
-rw-r--r--languages/messages/MessagesBs.php211
-rw-r--r--languages/messages/MessagesBug.php3
-rw-r--r--languages/messages/MessagesBxr.php72
-rw-r--r--languages/messages/MessagesCa.php257
-rw-r--r--languages/messages/MessagesCbk_zam.php2
-rw-r--r--languages/messages/MessagesCdo.php71
-rw-r--r--languages/messages/MessagesCe.php266
-rw-r--r--languages/messages/MessagesCeb.php29
-rw-r--r--languages/messages/MessagesCh.php16
-rw-r--r--languages/messages/MessagesChr.php1
-rw-r--r--languages/messages/MessagesCkb.php150
-rw-r--r--languages/messages/MessagesCo.php5
-rw-r--r--languages/messages/MessagesCps.php19
-rw-r--r--languages/messages/MessagesCrh_cyrl.php49
-rw-r--r--languages/messages/MessagesCrh_latn.php49
-rw-r--r--languages/messages/MessagesCs.php269
-rw-r--r--languages/messages/MessagesCsb.php17
-rw-r--r--languages/messages/MessagesCu.php57
-rw-r--r--languages/messages/MessagesCv.php35
-rw-r--r--languages/messages/MessagesCy.php269
-rw-r--r--languages/messages/MessagesDa.php306
-rw-r--r--languages/messages/MessagesDe.php278
-rw-r--r--languages/messages/MessagesDe_at.php12
-rw-r--r--languages/messages/MessagesDe_ch.php72
-rw-r--r--languages/messages/MessagesDe_formal.php73
-rw-r--r--languages/messages/MessagesDiq.php384
-rw-r--r--languages/messages/MessagesDsb.php91
-rw-r--r--languages/messages/MessagesDtp.php35
-rw-r--r--languages/messages/MessagesDv.php86
-rw-r--r--languages/messages/MessagesEe.php3
-rw-r--r--languages/messages/MessagesEgl.php14
-rw-r--r--languages/messages/MessagesEl.php238
-rw-r--r--languages/messages/MessagesEml.php6
-rw-r--r--languages/messages/MessagesEn.php690
-rw-r--r--languages/messages/MessagesEn_ca.php33
-rw-r--r--languages/messages/MessagesEn_gb.php56
-rw-r--r--languages/messages/MessagesEo.php184
-rw-r--r--languages/messages/MessagesEs.php278
-rw-r--r--languages/messages/MessagesEt.php270
-rw-r--r--languages/messages/MessagesEu.php147
-rw-r--r--languages/messages/MessagesExt.php55
-rw-r--r--languages/messages/MessagesFa.php262
-rw-r--r--languages/messages/MessagesFi.php261
-rw-r--r--languages/messages/MessagesFit.php1
-rw-r--r--languages/messages/MessagesFj.php2
-rw-r--r--languages/messages/MessagesFo.php199
-rw-r--r--languages/messages/MessagesFr.php274
-rw-r--r--languages/messages/MessagesFrc.php2
-rw-r--r--languages/messages/MessagesFrp.php145
-rw-r--r--languages/messages/MessagesFrr.php239
-rw-r--r--languages/messages/MessagesFur.php34
-rw-r--r--languages/messages/MessagesFy.php49
-rw-r--r--languages/messages/MessagesGa.php62
-rw-r--r--languages/messages/MessagesGag.php10
-rw-r--r--languages/messages/MessagesGan_hans.php53
-rw-r--r--languages/messages/MessagesGan_hant.php53
-rw-r--r--languages/messages/MessagesGd.php47
-rw-r--r--languages/messages/MessagesGl.php275
-rw-r--r--languages/messages/MessagesGn.php5
-rw-r--r--languages/messages/MessagesGrc.php51
-rw-r--r--languages/messages/MessagesGsw.php70
-rw-r--r--languages/messages/MessagesGu.php221
-rw-r--r--languages/messages/MessagesGv.php21
-rw-r--r--languages/messages/MessagesHa.php2
-rw-r--r--languages/messages/MessagesHak.php98
-rw-r--r--languages/messages/MessagesHaw.php9
-rw-r--r--languages/messages/MessagesHe.php275
-rw-r--r--languages/messages/MessagesHi.php222
-rw-r--r--languages/messages/MessagesHif_latn.php196
-rw-r--r--languages/messages/MessagesHil.php43
-rw-r--r--languages/messages/MessagesHr.php171
-rw-r--r--languages/messages/MessagesHsb.php176
-rw-r--r--languages/messages/MessagesHt.php25
-rw-r--r--languages/messages/MessagesHu.php170
-rw-r--r--languages/messages/MessagesHy.php103
-rw-r--r--languages/messages/MessagesIa.php283
-rw-r--r--languages/messages/MessagesId.php269
-rw-r--r--languages/messages/MessagesIe.php22
-rw-r--r--languages/messages/MessagesIg.php29
-rw-r--r--languages/messages/MessagesIk.php21
-rw-r--r--languages/messages/MessagesIke_cans.php4
-rw-r--r--languages/messages/MessagesIke_latn.php4
-rw-r--r--languages/messages/MessagesIlo.php252
-rw-r--r--languages/messages/MessagesInh.php22
-rw-r--r--languages/messages/MessagesIo.php20
-rw-r--r--languages/messages/MessagesIs.php152
-rw-r--r--languages/messages/MessagesIt.php264
-rw-r--r--languages/messages/MessagesJa.php278
-rw-r--r--languages/messages/MessagesJam.php20
-rw-r--r--languages/messages/MessagesJut.php5
-rw-r--r--languages/messages/MessagesJv.php82
-rw-r--r--languages/messages/MessagesKa.php214
-rw-r--r--languages/messages/MessagesKaa.php45
-rw-r--r--languages/messages/MessagesKab.php73
-rw-r--r--languages/messages/MessagesKbd_cyrl.php22
-rw-r--r--languages/messages/MessagesKg.php13
-rw-r--r--languages/messages/MessagesKhw.php27
-rw-r--r--languages/messages/MessagesKiu.php43
-rw-r--r--languages/messages/MessagesKk_arab.php71
-rw-r--r--languages/messages/MessagesKk_cyrl.php189
-rw-r--r--languages/messages/MessagesKk_latn.php71
-rw-r--r--languages/messages/MessagesKm.php190
-rw-r--r--languages/messages/MessagesKn.php70
-rw-r--r--languages/messages/MessagesKo.php291
-rw-r--r--languages/messages/MessagesKoi.php5
-rw-r--r--languages/messages/MessagesKrc.php196
-rw-r--r--languages/messages/MessagesKrj.php11
-rw-r--r--languages/messages/MessagesKs.php49
-rw-r--r--languages/messages/MessagesKs_arab.php8
-rw-r--r--languages/messages/MessagesKs_deva.php7
-rw-r--r--languages/messages/MessagesKsh.php217
-rw-r--r--languages/messages/MessagesKu_latn.php59
-rw-r--r--languages/messages/MessagesKw.php164
-rw-r--r--languages/messages/MessagesKy.php80
-rw-r--r--languages/messages/MessagesLa.php242
-rw-r--r--languages/messages/MessagesLad.php24
-rw-r--r--languages/messages/MessagesLb.php253
-rw-r--r--languages/messages/MessagesLbe.php2
-rw-r--r--languages/messages/MessagesLez.php52
-rw-r--r--languages/messages/MessagesLfn.php24
-rw-r--r--languages/messages/MessagesLg.php28
-rw-r--r--languages/messages/MessagesLi.php71
-rw-r--r--languages/messages/MessagesLij.php50
-rw-r--r--languages/messages/MessagesLiv.php6
-rw-r--r--languages/messages/MessagesLmo.php12
-rw-r--r--languages/messages/MessagesLn.php5
-rw-r--r--languages/messages/MessagesLo.php22
-rw-r--r--languages/messages/MessagesLoz.php17
-rw-r--r--languages/messages/MessagesLt.php172
-rw-r--r--languages/messages/MessagesLtg.php10
-rw-r--r--languages/messages/MessagesLus.php37
-rw-r--r--languages/messages/MessagesLv.php166
-rw-r--r--languages/messages/MessagesLzh.php108
-rw-r--r--languages/messages/MessagesMai.php70
-rw-r--r--languages/messages/MessagesMap_bms.php120
-rw-r--r--languages/messages/MessagesMdf.php58
-rw-r--r--languages/messages/MessagesMg.php201
-rw-r--r--languages/messages/MessagesMhr.php22
-rw-r--r--languages/messages/MessagesMin.php211
-rw-r--r--languages/messages/MessagesMk.php282
-rw-r--r--languages/messages/MessagesMl.php264
-rw-r--r--languages/messages/MessagesMn.php66
-rw-r--r--languages/messages/MessagesMr.php258
-rw-r--r--languages/messages/MessagesMrj.php2
-rw-r--r--languages/messages/MessagesMs.php269
-rw-r--r--languages/messages/MessagesMt.php133
-rw-r--r--languages/messages/MessagesMwl.php22
-rw-r--r--languages/messages/MessagesMy.php41
-rw-r--r--languages/messages/MessagesMyv.php40
-rw-r--r--languages/messages/MessagesMzn.php28
-rw-r--r--languages/messages/MessagesNa.php2
-rw-r--r--languages/messages/MessagesNah.php21
-rw-r--r--languages/messages/MessagesNan.php30
-rw-r--r--languages/messages/MessagesNap.php36
-rw-r--r--languages/messages/MessagesNb.php249
-rw-r--r--languages/messages/MessagesNds.php61
-rw-r--r--languages/messages/MessagesNds_nl.php264
-rw-r--r--languages/messages/MessagesNe.php186
-rw-r--r--languages/messages/MessagesNew.php9
-rw-r--r--languages/messages/MessagesNiu.php3
-rw-r--r--languages/messages/MessagesNl.php286
-rw-r--r--languages/messages/MessagesNl_informal.php361
-rw-r--r--languages/messages/MessagesNn.php212
-rw-r--r--languages/messages/MessagesNov.php2
-rw-r--r--languages/messages/MessagesNso.php14
-rw-r--r--languages/messages/MessagesNv.php2
-rw-r--r--languages/messages/MessagesNy.php12
-rw-r--r--languages/messages/MessagesOc.php250
-rw-r--r--languages/messages/MessagesOr.php122
-rw-r--r--languages/messages/MessagesOs.php79
-rw-r--r--languages/messages/MessagesPa.php181
-rw-r--r--languages/messages/MessagesPag.php7
-rw-r--r--languages/messages/MessagesPam.php53
-rw-r--r--languages/messages/MessagesPap.php9
-rw-r--r--languages/messages/MessagesPcd.php12
-rw-r--r--languages/messages/MessagesPdc.php15
-rw-r--r--languages/messages/MessagesPdt.php10
-rw-r--r--languages/messages/MessagesPfl.php56
-rw-r--r--languages/messages/MessagesPi.php95
-rw-r--r--languages/messages/MessagesPl.php273
-rw-r--r--languages/messages/MessagesPms.php268
-rw-r--r--languages/messages/MessagesPnb.php67
-rw-r--r--languages/messages/MessagesPnt.php20
-rw-r--r--languages/messages/MessagesPrg.php61
-rw-r--r--languages/messages/MessagesPs.php102
-rw-r--r--languages/messages/MessagesPt.php239
-rw-r--r--languages/messages/MessagesPt_br.php263
-rw-r--r--languages/messages/MessagesQqq.php660
-rw-r--r--languages/messages/MessagesQu.php243
-rw-r--r--languages/messages/MessagesQug.php7
-rw-r--r--languages/messages/MessagesRgn.php2
-rw-r--r--languages/messages/MessagesRm.php68
-rw-r--r--languages/messages/MessagesRo.php269
-rw-r--r--languages/messages/MessagesRoa_tara.php261
-rw-r--r--languages/messages/MessagesRu.php300
-rw-r--r--languages/messages/MessagesRue.php234
-rw-r--r--languages/messages/MessagesRup.php123
-rw-r--r--languages/messages/MessagesSa.php84
-rw-r--r--languages/messages/MessagesSah.php219
-rw-r--r--languages/messages/MessagesSat.php35
-rw-r--r--languages/messages/MessagesSc.php35
-rw-r--r--languages/messages/MessagesScn.php110
-rw-r--r--languages/messages/MessagesSco.php25
-rw-r--r--languages/messages/MessagesSd.php9
-rw-r--r--languages/messages/MessagesSdc.php49
-rw-r--r--languages/messages/MessagesSe.php56
-rw-r--r--languages/messages/MessagesSei.php27
-rw-r--r--languages/messages/MessagesSg.php1
-rw-r--r--languages/messages/MessagesSgs.php31
-rw-r--r--languages/messages/MessagesSh.php177
-rw-r--r--languages/messages/MessagesShi.php33
-rw-r--r--languages/messages/MessagesSi.php125
-rw-r--r--languages/messages/MessagesSk.php223
-rw-r--r--languages/messages/MessagesSl.php255
-rw-r--r--languages/messages/MessagesSli.php46
-rw-r--r--languages/messages/MessagesSm.php2
-rw-r--r--languages/messages/MessagesSma.php2
-rw-r--r--languages/messages/MessagesSn.php3
-rw-r--r--languages/messages/MessagesSo.php52
-rw-r--r--languages/messages/MessagesSq.php100
-rw-r--r--languages/messages/MessagesSr_ec.php208
-rw-r--r--languages/messages/MessagesSr_el.php152
-rw-r--r--languages/messages/MessagesSrn.php18
-rw-r--r--languages/messages/MessagesSt.php2
-rw-r--r--languages/messages/MessagesStq.php64
-rw-r--r--languages/messages/MessagesSu.php59
-rw-r--r--languages/messages/MessagesSv.php278
-rw-r--r--languages/messages/MessagesSw.php84
-rw-r--r--languages/messages/MessagesSzl.php58
-rw-r--r--languages/messages/MessagesTa.php148
-rw-r--r--languages/messages/MessagesTcy.php10
-rw-r--r--languages/messages/MessagesTe.php135
-rw-r--r--languages/messages/MessagesTet.php12
-rw-r--r--languages/messages/MessagesTg_cyrl.php57
-rw-r--r--languages/messages/MessagesTg_latn.php52
-rw-r--r--languages/messages/MessagesTh.php237
-rw-r--r--languages/messages/MessagesTk.php65
-rw-r--r--languages/messages/MessagesTl.php113
-rw-r--r--languages/messages/MessagesTly.php13
-rw-r--r--languages/messages/MessagesTn.php3
-rw-r--r--languages/messages/MessagesTo.php16
-rw-r--r--languages/messages/MessagesTpi.php17
-rw-r--r--languages/messages/MessagesTr.php225
-rw-r--r--languages/messages/MessagesTru.php12
-rw-r--r--languages/messages/MessagesTs.php20
-rw-r--r--languages/messages/MessagesTt_cyrl.php85
-rw-r--r--languages/messages/MessagesTt_latn.php52
-rw-r--r--languages/messages/MessagesTyv.php120
-rw-r--r--languages/messages/MessagesUdm.php20
-rw-r--r--languages/messages/MessagesUg_arab.php109
-rw-r--r--languages/messages/MessagesUk.php278
-rw-r--r--languages/messages/MessagesUr.php100
-rw-r--r--languages/messages/MessagesUz.php71
-rw-r--r--languages/messages/MessagesVe.php10
-rw-r--r--languages/messages/MessagesVec.php166
-rw-r--r--languages/messages/MessagesVep.php51
-rw-r--r--languages/messages/MessagesVi.php326
-rw-r--r--languages/messages/MessagesVls.php6
-rw-r--r--languages/messages/MessagesVmf.php111
-rw-r--r--languages/messages/MessagesVo.php107
-rw-r--r--languages/messages/MessagesVot.php16
-rw-r--r--languages/messages/MessagesVro.php53
-rw-r--r--languages/messages/MessagesWa.php52
-rw-r--r--languages/messages/MessagesWar.php156
-rw-r--r--languages/messages/MessagesWo.php56
-rw-r--r--languages/messages/MessagesWuu.php118
-rw-r--r--languages/messages/MessagesXal.php32
-rw-r--r--languages/messages/MessagesXh.php3
-rw-r--r--languages/messages/MessagesXmf.php9
-rw-r--r--languages/messages/MessagesYi.php248
-rw-r--r--languages/messages/MessagesYo.php127
-rw-r--r--languages/messages/MessagesYue.php95
-rw-r--r--languages/messages/MessagesZea.php33
-rw-r--r--languages/messages/MessagesZh_hans.php269
-rw-r--r--languages/messages/MessagesZh_hant.php283
-rw-r--r--languages/messages/MessagesZh_tw.php7
-rw-r--r--languages/messages/MessagesZu.php47
-rw-r--r--languages/utils/CLDRPluralRuleEvaluator.php10
-rw-r--r--load.php8
-rw-r--r--maintenance/Doxyfile15
-rw-r--r--maintenance/Maintenance.php70
-rw-r--r--maintenance/archives/patch-archive-ar_id.sql8
-rw-r--r--maintenance/archives/patch-change_tag.sql17
-rw-r--r--maintenance/archives/patch-eu_local_id.sql3
-rw-r--r--maintenance/archives/patch-external_user.sql9
-rw-r--r--maintenance/archives/patch-externallinks-el_id.sql8
-rw-r--r--maintenance/archives/patch-iwl_prefix_title_from-non-unique.sql5
-rw-r--r--maintenance/archives/patch-iwlinks-from-title-index.sql4
-rw-r--r--maintenance/archives/patch-kill-iwl_pft.sql7
-rw-r--r--maintenance/archives/patch-tag_summary.sql12
-rw-r--r--maintenance/archives/patch-valid_tag.sql4
-rw-r--r--maintenance/archives/upgradeLogging.php2
-rw-r--r--maintenance/attachLatest.php4
-rw-r--r--maintenance/backup.inc40
-rw-r--r--maintenance/backupPrefetch.inc8
-rw-r--r--maintenance/backupTextPass.inc68
-rw-r--r--maintenance/benchmarks/Benchmarker.php10
-rw-r--r--maintenance/benchmarks/README7
-rw-r--r--maintenance/benchmarks/bench_HTTP_HTTPS.php4
-rw-r--r--maintenance/benchmarks/bench_delete_truncate.php4
-rw-r--r--maintenance/benchmarks/bench_if_switch.php4
-rw-r--r--maintenance/benchmarks/bench_strtr_str_replace.php4
-rw-r--r--maintenance/benchmarks/bench_utf8_title_check.php6
-rw-r--r--maintenance/benchmarks/bench_wfBaseConvert.php4
-rw-r--r--maintenance/benchmarks/bench_wfIsWindows.php4
-rw-r--r--maintenance/benchmarks/benchmarkHooks.php4
-rw-r--r--maintenance/benchmarks/benchmarkPurge.php4
-rw-r--r--maintenance/cdb.php16
-rw-r--r--maintenance/changePassword.php4
-rw-r--r--maintenance/checkBadRedirects.php4
-rw-r--r--maintenance/checkImages.php4
-rw-r--r--maintenance/checkLess.php72
-rw-r--r--maintenance/checkSyntax.php15
-rw-r--r--maintenance/checkUsernames.php34
-rw-r--r--maintenance/cleanupAncientTables.php12
-rw-r--r--maintenance/cleanupCaps.php4
-rw-r--r--maintenance/cleanupImages.php4
-rw-r--r--maintenance/cleanupPreferences.php6
-rw-r--r--maintenance/cleanupRemovedModules.php10
-rw-r--r--maintenance/cleanupSpam.php4
-rw-r--r--maintenance/cleanupTable.inc20
-rw-r--r--maintenance/cleanupTitles.php57
-rw-r--r--maintenance/cleanupUploadStash.php18
-rw-r--r--maintenance/cleanupWatchlist.php8
-rw-r--r--maintenance/clearCacheStats.php4
-rw-r--r--maintenance/clearInterwikiCache.php4
-rw-r--r--maintenance/commandLine.inc4
-rw-r--r--maintenance/compareParsers.php11
-rw-r--r--maintenance/convertLinks.php15
-rw-r--r--maintenance/convertUserOptions.php4
-rw-r--r--maintenance/copyFileBackend.php221
-rw-r--r--maintenance/copyJobQueue.php99
-rw-r--r--maintenance/createAndPromote.php20
-rw-r--r--maintenance/deleteArchivedFiles.inc2
-rw-r--r--maintenance/deleteArchivedFiles.php6
-rw-r--r--maintenance/deleteArchivedRevisions.php6
-rw-r--r--maintenance/deleteBatch.php4
-rw-r--r--maintenance/deleteDefaultMessages.php6
-rw-r--r--maintenance/deleteEqualMessages.php15
-rw-r--r--maintenance/deleteImageMemcached.php10
-rw-r--r--maintenance/deleteOldRevisions.php4
-rw-r--r--maintenance/deleteOrphanedRevisions.php10
-rw-r--r--maintenance/deleteRevision.php4
-rw-r--r--maintenance/deleteSelfExternals.php8
-rw-r--r--maintenance/dev/includes/router.php16
-rw-r--r--maintenance/dictionary/mediawiki.dic4556
-rw-r--r--maintenance/doMaintenance.php45
-rw-r--r--maintenance/dumpBackup.php12
-rw-r--r--maintenance/dumpIterator.php28
-rw-r--r--maintenance/dumpLinks.php11
-rw-r--r--maintenance/dumpSisterSites.php11
-rw-r--r--maintenance/dumpTextPass.php4
-rw-r--r--maintenance/dumpUploads.php4
-rw-r--r--maintenance/edit.php7
-rw-r--r--maintenance/eraseArchivedFile.php119
-rw-r--r--maintenance/eval.php2
-rw-r--r--maintenance/fetchText.php10
-rw-r--r--maintenance/fileOpPerfTest.php26
-rw-r--r--maintenance/findHooks.php4
-rw-r--r--maintenance/fixDoubleRedirects.php4
-rw-r--r--maintenance/fixExtLinksProtocolRelative.php4
-rw-r--r--maintenance/fixSlaveDesync.php12
-rw-r--r--maintenance/fixTimestamps.php4
-rw-r--r--maintenance/fixUserRegistration.php4
-rw-r--r--maintenance/formatInstallDoc.php4
-rw-r--r--maintenance/fuzz-tester.php47
-rw-r--r--maintenance/generateSitemap.php40
-rw-r--r--maintenance/getConfiguration.php143
-rw-r--r--maintenance/getLagTimes.php6
-rw-r--r--maintenance/getSlaveServer.php4
-rw-r--r--maintenance/getText.php4
-rw-r--r--maintenance/hiphop/compiler.conf5
-rw-r--r--maintenance/hiphop/extra-files34
-rw-r--r--maintenance/hiphop/make311
-rw-r--r--maintenance/hiphop/run-server61
-rw-r--r--maintenance/hiphop/server.conf4
-rw-r--r--maintenance/importDump.php26
-rw-r--r--maintenance/importImages.inc4
-rw-r--r--maintenance/importImages.php81
-rw-r--r--maintenance/importSiteScripts.php4
-rw-r--r--maintenance/importTextFile.php22
-rw-r--r--maintenance/initEditCount.php4
-rw-r--r--maintenance/initSiteStats.php6
-rw-r--r--maintenance/install.php12
-rw-r--r--maintenance/jsduck/MetaTags.rb16
-rw-r--r--maintenance/jsduck/categories.json25
-rw-r--r--maintenance/jsduck/config.json15
-rw-r--r--maintenance/jsduck/eg-iframe.html86
-rw-r--r--maintenance/jsduck/external.js18
-rw-r--r--maintenance/jsparse.php12
-rw-r--r--maintenance/lag.php4
-rw-r--r--maintenance/language/StatOutputs.php12
-rw-r--r--maintenance/language/alltrans.php4
-rw-r--r--maintenance/language/checkDupeMessages.php34
-rw-r--r--maintenance/language/checkExtensions.php8
-rw-r--r--maintenance/language/checkLanguage.inc210
-rw-r--r--maintenance/language/checkLanguage.php6
-rw-r--r--maintenance/language/countMessages.php6
-rw-r--r--maintenance/language/date-formats.php4
-rw-r--r--maintenance/language/digit2html.php6
-rw-r--r--maintenance/language/dumpMessages.php4
-rw-r--r--maintenance/language/generateCollationData.php8
-rw-r--r--maintenance/language/generateNormalizerData.php6
-rw-r--r--maintenance/language/langmemusage.php9
-rw-r--r--maintenance/language/languages.inc34
-rw-r--r--maintenance/language/messageTypes.inc41
-rw-r--r--maintenance/language/messages.inc289
-rw-r--r--maintenance/language/rebuildLanguage.php12
-rw-r--r--maintenance/language/transstat.php8
-rw-r--r--maintenance/language/validate.php6
-rw-r--r--maintenance/language/writeMessagesArray.inc67
-rw-r--r--maintenance/mcc.php8
-rw-r--r--maintenance/mctest.php21
-rw-r--r--maintenance/mergeMessageFileList.php86
-rw-r--r--maintenance/migrateUserGroup.php4
-rw-r--r--maintenance/minify.php4
-rw-r--r--maintenance/moveBatch.php4
-rw-r--r--maintenance/mssql/tables.sql15
-rw-r--r--maintenance/mwdoc-filter.php2
-rw-r--r--maintenance/mwdocgen.php320
-rw-r--r--maintenance/mwjsduck-gen23
-rw-r--r--maintenance/namespaceDupes.php16
-rw-r--r--maintenance/nextJobDB.php4
-rw-r--r--maintenance/nukeNS.php8
-rw-r--r--maintenance/nukePage.php6
-rw-r--r--maintenance/oracle/alterSharedConstraints.php16
-rw-r--r--maintenance/oracle/archives/patch-archive-ar_id.sql6
-rw-r--r--maintenance/oracle/archives/patch-externallinks-el_id.sql4
-rw-r--r--maintenance/oracle/tables.sql24
-rw-r--r--maintenance/orphans.php8
-rw-r--r--maintenance/parse.php12
-rw-r--r--maintenance/patchSql.php4
-rw-r--r--maintenance/populateCategory.php4
-rw-r--r--maintenance/populateFilearchiveSha1.php8
-rw-r--r--maintenance/populateImageSha1.php4
-rw-r--r--maintenance/populateLogSearch.php25
-rw-r--r--maintenance/populateLogUsertext.php4
-rw-r--r--maintenance/populateParentId.php7
-rw-r--r--maintenance/populateRevisionLength.php24
-rw-r--r--maintenance/populateRevisionSha1.php10
-rw-r--r--maintenance/postgres/archives/patch-external_user.sql6
-rw-r--r--maintenance/postgres/archives/patch-kill-iwl_pft.sql7
-rw-r--r--maintenance/postgres/archives/patch-profiling.sql3
-rw-r--r--maintenance/postgres/archives/patch-rename-iwl_prefix.sql2
-rw-r--r--maintenance/postgres/tables.sql20
-rw-r--r--maintenance/preprocessDump.php9
-rw-r--r--maintenance/preprocessorFuzzTest.php4
-rw-r--r--maintenance/protect.php6
-rw-r--r--maintenance/proxyCheck.php70
-rw-r--r--maintenance/pruneFileCache.php4
-rw-r--r--maintenance/purgeChangedFiles.php255
-rw-r--r--maintenance/purgeChangedPages.php191
-rw-r--r--maintenance/purgeDeletedFiles.php96
-rw-r--r--maintenance/purgeList.php16
-rw-r--r--maintenance/purgeOldText.inc18
-rw-r--r--maintenance/purgeOldText.php4
-rw-r--r--maintenance/purgeParserCache.php4
-rw-r--r--maintenance/reassignEdits.php6
-rw-r--r--maintenance/rebuildFileCache.php7
-rw-r--r--maintenance/rebuildImages.php4
-rw-r--r--maintenance/rebuildLocalisationCache.php22
-rw-r--r--maintenance/rebuildall.php8
-rw-r--r--maintenance/rebuildmessages.php7
-rw-r--r--maintenance/rebuildrecentchanges.php22
-rw-r--r--maintenance/rebuildtextindex.php9
-rw-r--r--maintenance/refreshFileHeaders.php4
-rw-r--r--maintenance/refreshImageMetadata.php14
-rw-r--r--maintenance/refreshLinks.php19
-rw-r--r--maintenance/removeUnusedAccounts.php9
-rw-r--r--maintenance/renameDbPrefix.php4
-rw-r--r--maintenance/renderDump.php18
-rw-r--r--maintenance/resetUserTokens.php70
-rw-r--r--maintenance/rollbackEdits.php4
-rw-r--r--maintenance/runBatchedQuery.php7
-rw-r--r--maintenance/runJobs.php54
-rw-r--r--maintenance/showCacheStats.php4
-rw-r--r--maintenance/showJobs.php26
-rw-r--r--maintenance/showSiteStats.php7
-rw-r--r--maintenance/sql.php46
-rw-r--r--maintenance/sqlite.inc11
-rw-r--r--maintenance/sqlite.php4
-rw-r--r--maintenance/sqlite/archives/initial-indexes.sql49
-rw-r--r--maintenance/sqlite/archives/patch-archive-ar_id.sql39
-rw-r--r--maintenance/sqlite/archives/patch-externallinks-el_id.sql19
-rw-r--r--maintenance/sqlite/archives/patch-kill-iwl_pft.sql7
-rw-r--r--maintenance/sqlite/archives/patch-rename-iwl_prefix.sql2
-rw-r--r--maintenance/storage/checkStorage.php18
-rw-r--r--maintenance/storage/compressOld.php35
-rw-r--r--maintenance/storage/dumpRev.php6
-rw-r--r--maintenance/storage/fixBug20757.php4
-rw-r--r--maintenance/storage/moveToExternal.php6
-rw-r--r--maintenance/storage/orphanStats.php4
-rw-r--r--maintenance/storage/recompressTracked.php4
-rw-r--r--maintenance/storage/resolveStubs.php2
-rw-r--r--maintenance/storage/storageTypeStats.php4
-rw-r--r--maintenance/storage/testCompression.php2
-rw-r--r--maintenance/storage/trackBlobs.php2
-rw-r--r--maintenance/syncFileBackend.php13
-rw-r--r--maintenance/tables.sql35
-rw-r--r--maintenance/tidyUpBug37714.php49
-rw-r--r--maintenance/undelete.php4
-rw-r--r--maintenance/update.php29
-rw-r--r--maintenance/updateArticleCount.php4
-rw-r--r--maintenance/updateCollation.php8
-rw-r--r--maintenance/updateDoubleWidthSearch.php4
-rw-r--r--maintenance/updateRestrictions.php4
-rw-r--r--maintenance/updateSearchIndex.php11
-rw-r--r--maintenance/updateSpecialPages.php77
-rw-r--r--maintenance/userDupes.inc67
-rw-r--r--maintenance/userOptions.inc28
-rw-r--r--maintenance/userOptions.php2
-rw-r--r--maintenance/waitForSlave.php4
-rw-r--r--mw-config/index.php6
-rw-r--r--opensearch_desc.php2
-rw-r--r--profileinfo.php9
-rw-r--r--redirect.php36
-rw-r--r--redirect.phtml3
-rw-r--r--resources/Resources.php220
-rw-r--r--resources/Resources.php.orig968
-rw-r--r--resources/jquery.chosen/LICENSE24
-rw-r--r--resources/jquery.chosen/chosen-sprite.pngbin0 -> 646 bytes
-rw-r--r--resources/jquery.chosen/chosen-sprite@2x.pngbin0 -> 871 bytes
-rw-r--r--resources/jquery.chosen/chosen.css440
-rw-r--r--resources/jquery.chosen/chosen.jquery.js1103
-rw-r--r--resources/jquery.tipsy/images/tipsy.pngbin175 -> 133 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-bg_flat_0_aaaaaa_40x100.pngbin180 -> 87 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-bg_flat_75_ffffff_40x100.pngbin178 -> 87 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-bg_glass_55_fbf9ee_1x400.pngbin120 -> 115 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-bg_glass_65_ffffff_1x400.pngbin105 -> 99 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-bg_glass_75_dadada_1x400.pngbin111 -> 111 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-bg_highlight-soft_75_cccccc_1x100.pngbin101 -> 86 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-icons_222222_256x240.pngbin4369 -> 3702 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-icons_2e83ff_256x240.pngbin4369 -> 3702 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-icons_454545_256x240.pngbin4369 -> 3702 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-icons_888888_256x240.pngbin4369 -> 3702 bytes
-rw-r--r--resources/jquery.ui/themes/default/images/ui-icons_cd0a0a_256x240.pngbin4369 -> 3702 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-blue-hover-large.pngbin260 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-blue-hover.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-blue-large.pngbin265 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-blue.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-disabled-blue.pngbin84 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-disabled-green.pngbin149 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-disabled-red.pngbin84 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-disabled.pngbin84 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-down-blue.pngbin130 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-down-green.pngbin141 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-down-red.pngbin130 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-down.pngbin130 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-green-hover-large.pngbin265 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-green-hover.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-green-large.pngbin265 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-green.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-large-disabled-green.pngbin277 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-large-off-green.pngbin282 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-off-blue.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-off-green.pngbin149 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-off-red.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-off.pngbin152 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-orange-hover-large.pngbin265 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-orange-hover.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-orange-large.pngbin265 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-orange.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-over-blue.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-over-green.pngbin149 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-over-red.pngbin174 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-over.pngbin155 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-red-hover-large.pngbin260 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-red-hover.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-red-large.pngbin265 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/button-red.pngbin175 -> 0 bytes
-rw-r--r--resources/jquery.ui/themes/vector/images/titlebar-fade.pngbin188 -> 81 bytes
-rw-r--r--resources/jquery.ui/themes/vector/jquery.ui.button.css368
-rw-r--r--resources/jquery/images/jquery.arrowSteps.divider-ltr.pngbin135 -> 126 bytes
-rw-r--r--resources/jquery/images/jquery.arrowSteps.divider-rtl.pngbin139 -> 127 bytes
-rw-r--r--resources/jquery/images/jquery.arrowSteps.head-ltr.pngbin390 -> 303 bytes
-rw-r--r--resources/jquery/images/jquery.arrowSteps.head-rtl.pngbin365 -> 311 bytes
-rw-r--r--resources/jquery/images/jquery.arrowSteps.tail-ltr.pngbin223 -> 222 bytes
-rw-r--r--resources/jquery/images/marker.pngbin652 -> 472 bytes
-rw-r--r--resources/jquery/images/mask.pngbin2020 -> 1795 bytes
-rw-r--r--resources/jquery/jquery.badge.css9
-rw-r--r--resources/jquery/jquery.byteLength.js12
-rw-r--r--resources/jquery/jquery.byteLimit.js3
-rw-r--r--resources/jquery/jquery.checkboxShiftClick.js16
-rw-r--r--resources/jquery/jquery.client.js100
-rw-r--r--resources/jquery/jquery.makeCollapsible.js231
-rw-r--r--resources/jquery/jquery.placeholder.js9
-rw-r--r--resources/jquery/jquery.spinner.css2
-rw-r--r--resources/jquery/jquery.spinner.js47
-rw-r--r--resources/jquery/jquery.suggestions.js4
-rw-r--r--resources/jquery/jquery.tablesorter.js180
-rw-r--r--resources/jquery/jquery.textSelection.js4
-rw-r--r--resources/mediawiki.action/images/green-checkmark.pngbin0 -> 681 bytes
-rw-r--r--resources/mediawiki.action/mediawiki.action.edit.collapsibleFooter.css17
-rw-r--r--resources/mediawiki.action/mediawiki.action.edit.collapsibleFooter.js54
-rw-r--r--resources/mediawiki.action/mediawiki.action.edit.editWarning.js56
-rw-r--r--resources/mediawiki.action/mediawiki.action.edit.js167
-rw-r--r--resources/mediawiki.action/mediawiki.action.edit.preview.js53
-rw-r--r--resources/mediawiki.action/mediawiki.action.edit.styles.css (renamed from extensions/Vector/modules/ext.vector.footerCleanup.css)30
-rw-r--r--resources/mediawiki.action/mediawiki.action.history.js2
-rw-r--r--resources/mediawiki.action/mediawiki.action.view.postEdit.css77
-rw-r--r--resources/mediawiki.action/mediawiki.action.view.postEdit.js75
-rw-r--r--resources/mediawiki.action/mediawiki.action.view.rightClickEdit.js4
-rw-r--r--resources/mediawiki.api/mediawiki.api.category.js35
-rw-r--r--resources/mediawiki.api/mediawiki.api.edit.js65
-rw-r--r--resources/mediawiki.api/mediawiki.api.js88
-rw-r--r--resources/mediawiki.api/mediawiki.api.login.js54
-rw-r--r--resources/mediawiki.api/mediawiki.api.parse.js12
-rw-r--r--resources/mediawiki.api/mediawiki.api.watch.js12
-rw-r--r--resources/mediawiki.language/mediawiki.language.js23
-rw-r--r--resources/mediawiki.language/mediawiki.language.months.js54
-rw-r--r--resources/mediawiki.less/mediawiki.mixins.less46
-rw-r--r--resources/mediawiki.libs/mediawiki.libs.jpegmeta.js2
-rw-r--r--resources/mediawiki.page/mediawiki.page.gallery.js248
-rw-r--r--resources/mediawiki.page/mediawiki.page.image.pagination.js51
-rw-r--r--resources/mediawiki.page/mediawiki.page.patrol.ajax.js2
-rw-r--r--resources/mediawiki.page/mediawiki.page.ready.js38
-rw-r--r--resources/mediawiki.page/mediawiki.page.startup.js23
-rw-r--r--resources/mediawiki.page/mediawiki.page.watch.ajax.js6
-rw-r--r--resources/mediawiki.special/images/arrow-collapsed-ltr.pngbin206 -> 0 bytes
-rw-r--r--resources/mediawiki.special/images/arrow-collapsed-rtl.pngbin205 -> 0 bytes
-rw-r--r--resources/mediawiki.special/images/arrow-expanded.pngbin205 -> 0 bytes
-rw-r--r--resources/mediawiki.special/images/glyph-people-large.pngbin0 -> 1663 bytes
-rw-r--r--resources/mediawiki.special/images/icon-contributors.pngbin0 -> 1169 bytes
-rw-r--r--resources/mediawiki.special/images/icon-edits.pngbin0 -> 780 bytes
-rw-r--r--resources/mediawiki.special/images/icon-lock.pngbin0 -> 172 bytes
-rw-r--r--resources/mediawiki.special/images/icon-pages.pngbin0 -> 528 bytes
-rw-r--r--resources/mediawiki.special/mediawiki.special.block.js2
-rw-r--r--resources/mediawiki.special/mediawiki.special.changeemail.js2
-rw-r--r--resources/mediawiki.special/mediawiki.special.changeslist.css57
-rw-r--r--resources/mediawiki.special/mediawiki.special.changeslist.enhanced.css66
-rw-r--r--resources/mediawiki.special/mediawiki.special.createAccount.css89
-rw-r--r--resources/mediawiki.special/mediawiki.special.createAccount.js112
-rw-r--r--resources/mediawiki.special/mediawiki.special.movePage.js2
-rw-r--r--resources/mediawiki.special/mediawiki.special.pagesWithProp.css4
-rw-r--r--resources/mediawiki.special/mediawiki.special.preferences.js2
-rw-r--r--resources/mediawiki.special/mediawiki.special.recentchanges.js2
-rw-r--r--resources/mediawiki.special/mediawiki.special.search.js2
-rw-r--r--resources/mediawiki.special/mediawiki.special.undelete.js2
-rw-r--r--resources/mediawiki.special/mediawiki.special.upload.js4
-rw-r--r--resources/mediawiki.special/mediawiki.special.userLogin.css39
-rw-r--r--resources/mediawiki.special/mediawiki.special.userLogin.signup.js10
-rw-r--r--resources/mediawiki.special/mediawiki.special.vforms.css46
-rw-r--r--resources/mediawiki.ui/mediawiki.ui.default.css272
-rw-r--r--resources/mediawiki.ui/mediawiki.ui.vector.css414
-rw-r--r--resources/mediawiki.ui/sourcefiles/Makefile24
-rw-r--r--resources/mediawiki.ui/sourcefiles/config.rb27
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/components/_default.scss3
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/components/_utilities.scss17
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/components/_vector.scss4
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/components/default/_buttons.scss69
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/components/default/_forms.scss114
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/components/vector/_buttons.scss19
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/components/vector/_containers.scss5
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/components/vector/_forms.scss7
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/mediawiki.ui.default.scss16
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/mediawiki.ui.vector.scss15
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/mixins/_all.scss4
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/mixins/_effects.scss62
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/mixins/_forms.scss66
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/mixins/_type.scss6
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/mixins/_utilities.scss19
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/settings/_all.scss2
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/settings/_colors.scss17
-rw-r--r--resources/mediawiki.ui/sourcefiles/scss/settings/_typography.scss5
-rw-r--r--resources/mediawiki/images/arrow-collapsed-ltr.pngbin0 -> 133 bytes
-rw-r--r--resources/mediawiki/images/arrow-collapsed-rtl.pngbin0 -> 136 bytes
-rw-r--r--resources/mediawiki/images/arrow-expanded.pngbin0 -> 134 bytes
-rw-r--r--resources/mediawiki/mediawiki.Title.js574
-rw-r--r--resources/mediawiki/mediawiki.Uri.js4
-rw-r--r--resources/mediawiki/mediawiki.debug.js2
-rw-r--r--resources/mediawiki/mediawiki.htmlform.js70
-rw-r--r--resources/mediawiki/mediawiki.icon.css15
-rw-r--r--resources/mediawiki/mediawiki.inspect.js204
-rw-r--r--resources/mediawiki/mediawiki.jqueryMsg.js335
-rw-r--r--resources/mediawiki/mediawiki.js496
-rw-r--r--resources/mediawiki/mediawiki.log.js65
-rw-r--r--resources/mediawiki/mediawiki.notification.css16
-rw-r--r--resources/mediawiki/mediawiki.notification.js25
-rw-r--r--resources/mediawiki/mediawiki.notify.js13
-rw-r--r--resources/mediawiki/mediawiki.searchSuggest.js48
-rw-r--r--resources/mediawiki/mediawiki.user.js253
-rw-r--r--resources/mediawiki/mediawiki.util.js204
-rw-r--r--resources/startup.js42
-rw-r--r--serialized/serialize.php4
-rw-r--r--skins/ArchLinux.php120
-rw-r--r--skins/Chick.php47
-rw-r--r--skins/CologneBlue.php47
-rw-r--r--skins/Modern.php55
-rw-r--r--skins/MonoBook.php120
-rw-r--r--skins/Nostalgia.php147
-rw-r--r--skins/Simple.php58
-rw-r--r--skins/Standard.php294
-rw-r--r--skins/Vector.php194
-rw-r--r--skins/archlinux/IE60Fixes.css9
-rw-r--r--skins/archlinux/Opera6Fixes.css20
-rw-r--r--skins/archlinux/Opera7Fixes.css21
-rw-r--r--skins/archlinux/Opera9Fixes.css11
-rw-r--r--skins/archlinux/external-ltr.pngbin143 -> 141 bytes
-rw-r--r--skins/archlinux/external-rtl.pngbin141 -> 141 bytes
-rw-r--r--skins/archlinux/main.css26
-rw-r--r--skins/archlinux/wiki-indexed.pngbin8008 -> 8007 bytes
-rw-r--r--skins/chick/IE60Fixes.css79
-rw-r--r--skins/chick/main.css368
-rw-r--r--skins/cologneblue/print.css6
-rw-r--r--skins/cologneblue/screen.css19
-rw-r--r--skins/common/IEFixes.js82
-rw-r--r--skins/common/ajax.js121
-rw-r--r--skins/common/commonContent.css49
-rw-r--r--skins/common/commonElements.css26
-rw-r--r--skins/common/commonPrint.css7
-rw-r--r--skins/common/config.css8
-rw-r--r--skins/common/config.js14
-rw-r--r--skins/common/images/Arr_u.pngbin207 -> 207 bytes
-rw-r--r--skins/common/images/ar/button_headline.pngbin487 -> 484 bytes
-rw-r--r--skins/common/images/ar/button_nowiki.pngbin875 -> 874 bytes
-rw-r--r--skins/common/images/arrow_disabled_left_25.pngbin301 -> 301 bytes
-rw-r--r--skins/common/images/arrow_disabled_right_25.pngbin307 -> 307 bytes
-rw-r--r--skins/common/images/arrow_right_25.pngbin341 -> 337 bytes
-rw-r--r--skins/common/images/button_hr.pngbin222 -> 200 bytes
-rw-r--r--skins/common/images/button_nowiki.pngbin322 -> 322 bytes
-rw-r--r--skins/common/images/button_sig.pngbin926 -> 920 bytes
-rw-r--r--skins/common/images/button_template.pngbin188 -> 178 bytes
-rw-r--r--skins/common/images/critical-32.pngbin1763 -> 1758 bytes
-rw-r--r--skins/common/images/fa/button_nowiki.pngbin875 -> 874 bytes
-rw-r--r--skins/common/images/feed-icon.pngbin557 -> 542 bytes
-rw-r--r--skins/common/images/icons/fileicon-psd.pngbin10376 -> 7756 bytes
-rw-r--r--skins/common/images/magnify-clip-rtl.pngbin208 -> 149 bytes
-rw-r--r--skins/common/images/question-small.pngbin0 -> 316 bytes
-rw-r--r--skins/common/images/question.svg12
-rw-r--r--skins/common/images/tick-32.pngbin1137 -> 1103 bytes
-rw-r--r--skins/common/images/warning-32.pngbin1301 -> 1299 bytes
-rw-r--r--skins/common/oldshared.css42
-rw-r--r--skins/common/protect.js236
-rw-r--r--skins/common/shared.css196
-rw-r--r--skins/common/upload.js322
-rw-r--r--skins/common/wikibits.js745
-rw-r--r--skins/common/wikiprintable.css59
-rw-r--r--skins/modern/external.pngbin143 -> 141 bytes
-rw-r--r--skins/modern/main.css43
-rw-r--r--skins/modern/print.css2
-rw-r--r--skins/monobook/IE60Fixes.css9
-rw-r--r--skins/monobook/Opera6Fixes.css20
-rw-r--r--skins/monobook/Opera7Fixes.css21
-rw-r--r--skins/monobook/Opera9Fixes.css11
-rw-r--r--skins/monobook/external-ltr.pngbin143 -> 141 bytes
-rw-r--r--skins/monobook/external-rtl.pngbin141 -> 141 bytes
-rw-r--r--skins/monobook/main.css26
-rw-r--r--skins/monobook/wiki-indexed.pngbin8008 -> 8007 bytes
-rw-r--r--skins/myskin/main.css1
-rw-r--r--skins/nostalgia/screen.css56
-rw-r--r--skins/simple/discussionitem_icon.gifbin549 -> 0 bytes
-rw-r--r--skins/simple/external.pngbin143 -> 0 bytes
-rw-r--r--skins/simple/file_icon.gifbin323 -> 0 bytes
-rw-r--r--skins/simple/link_icon.gifbin342 -> 0 bytes
-rw-r--r--skins/simple/lock_icon.gifbin321 -> 0 bytes
-rw-r--r--skins/simple/mail_icon.gifbin321 -> 0 bytes
-rw-r--r--skins/simple/main.css427
-rw-r--r--skins/standard/main.css188
-rw-r--r--skins/vector/beta/screen.less75
-rw-r--r--skins/vector/beta/variables.less37
-rw-r--r--skins/vector/collapsibleNav.js121
-rw-r--r--skins/vector/collapsibleNav.less91
-rw-r--r--skins/vector/collapsibleTabs.js (renamed from extensions/Vector/modules/jquery.collapsibleTabs.js)42
-rw-r--r--skins/vector/externalLinks.less75
-rw-r--r--skins/vector/images/arrow-collapsed-ltr.png (renamed from extensions/Vector/modules/images/closed-ltr.png)bin143 -> 143 bytes
-rw-r--r--skins/vector/images/arrow-collapsed-ltr.svg37
-rw-r--r--skins/vector/images/arrow-collapsed-rtl.png (renamed from extensions/Vector/modules/images/closed-rtl.png)bin145 -> 145 bytes
-rw-r--r--skins/vector/images/arrow-collapsed-rtl.svg37
-rw-r--r--skins/vector/images/arrow-down-focus-icon.svg37
-rw-r--r--skins/vector/images/arrow-down-icon.svg37
-rw-r--r--skins/vector/images/arrow-expanded.png (renamed from extensions/Vector/modules/images/open.png)bin145 -> 145 bytes
-rw-r--r--skins/vector/images/arrow-expanded.svg37
-rw-r--r--skins/vector/images/edit-icon.pngbin277 -> 276 bytes
-rw-r--r--skins/vector/images/external-link-ltr-icon.pngbin143 -> 141 bytes
-rw-r--r--skins/vector/images/external-link-rtl-icon.pngbin141 -> 141 bytes
-rw-r--r--skins/vector/images/mail-icon.pngbin197 -> 197 bytes
-rw-r--r--skins/vector/images/news-icon.pngbin180 -> 180 bytes
-rw-r--r--skins/vector/images/page-fade.pngbin115 -> 115 bytes
-rw-r--r--skins/vector/images/portal-break-ltr.pngbin169 -> 168 bytes
-rw-r--r--skins/vector/images/preferences-break.pngbin205 -> 103 bytes
-rw-r--r--skins/vector/images/tab-break.pngbin125 -> 125 bytes
-rw-r--r--skins/vector/images/talk-icon.pngbin173 -> 173 bytes
-rw-r--r--skins/vector/images/user-icon.svg424
-rw-r--r--skins/vector/images/video-icon.pngbin162 -> 162 bytes
-rw-r--r--skins/vector/screen-hd.less (renamed from skins/vector/screen-hd.css)4
-rw-r--r--skins/vector/screen.less (renamed from skins/vector/screen.css)376
-rw-r--r--skins/vector/styles-beta.less13
-rw-r--r--skins/vector/styles.less11
-rw-r--r--skins/vector/variables.less37
-rw-r--r--skins/vector/vector.js52
-rw-r--r--tests/RunSeleniumTests.php258
-rw-r--r--tests/TestsAutoLoader.php30
-rw-r--r--tests/parser/ParserTestResult.php42
-rw-r--r--tests/parser/parserTest.inc274
-rw-r--r--tests/parser/parserTests.txt6469
-rw-r--r--tests/parser/preprocess/All_system_messages.expected21
-rw-r--r--tests/parser/preprocess/All_system_messages.txt21
-rw-r--r--tests/parserTests.php8
-rw-r--r--tests/phpunit/MediaWikiLangTestCase.php4
-rw-r--r--tests/phpunit/MediaWikiPHPUnitCommand.php22
-rw-r--r--tests/phpunit/MediaWikiPHPUnitTestListener.php114
-rw-r--r--tests/phpunit/MediaWikiTestCase.php32
-rw-r--r--tests/phpunit/bootstrap.php19
-rw-r--r--tests/phpunit/data/db/sqlite/tables-1.16.sql5
-rw-r--r--tests/phpunit/data/db/sqlite/tables-1.17.sql5
-rw-r--r--tests/phpunit/data/db/sqlite/tables-1.18.sql5
-rw-r--r--tests/phpunit/data/less/common/test.common.mixins.less5
-rw-r--r--tests/phpunit/data/less/module/dependency.less3
-rw-r--r--tests/phpunit/data/less/module/styles.css6
-rw-r--r--tests/phpunit/data/less/module/styles.less6
-rw-r--r--tests/phpunit/data/xmp/7.result.php18
-rw-r--r--tests/phpunit/includes/ArticleTablesTest.php7
-rw-r--r--tests/phpunit/includes/ArticleTest.php12
-rw-r--r--tests/phpunit/includes/BlockTest.php143
-rw-r--r--tests/phpunit/includes/CdbTest.php2
-rw-r--r--tests/phpunit/includes/CollationTest.php8
-rw-r--r--tests/phpunit/includes/DiffHistoryBlobTest.php9
-rw-r--r--tests/phpunit/includes/EditPageTest.php93
-rw-r--r--tests/phpunit/includes/ExternalStoreTest.php2
-rw-r--r--tests/phpunit/includes/ExtraParserTest.php27
-rw-r--r--tests/phpunit/includes/FallbackTest.php73
-rw-r--r--tests/phpunit/includes/FauxRequestTest.php15
-rw-r--r--tests/phpunit/includes/FauxResponseTest.php9
-rw-r--r--tests/phpunit/includes/FormOptionsInitializationTest.php1
-rw-r--r--tests/phpunit/includes/GlobalFunctions/GlobalTest.php201
-rw-r--r--tests/phpunit/includes/GlobalFunctions/GlobalWithDBTest.php6
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfAssembleUrlTest.php7
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfBCP47Test.php20
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfBaseConvertTest.php3
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfBaseNameTest.php6
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfExpandUrlTest.php20
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfGetCallerTest.php15
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfParseUrlTest.php9
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfRemoveDotSegmentsTest.php6
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfShorthandToIntegerTest.php8
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfTimestampTest.php19
-rw-r--r--tests/phpunit/includes/GlobalFunctions/wfUrlencodeTest.php11
-rw-r--r--tests/phpunit/includes/HTMLCheckMatrixTest.php102
-rw-r--r--tests/phpunit/includes/HashRingTest.php53
-rw-r--r--tests/phpunit/includes/HooksTest.php171
-rw-r--r--tests/phpunit/includes/HtmlFormatterTest.php81
-rw-r--r--tests/phpunit/includes/HtmlTest.php65
-rw-r--r--tests/phpunit/includes/HttpTest.php11
-rw-r--r--tests/phpunit/includes/IPTest.php78
-rw-r--r--tests/phpunit/includes/JsonTest.php27
-rw-r--r--tests/phpunit/includes/LanguageConverterTest.php35
-rw-r--r--tests/phpunit/includes/LicensesTest.php2
-rw-r--r--tests/phpunit/includes/LinkerTest.php4
-rw-r--r--tests/phpunit/includes/LinksUpdateTest.php23
-rw-r--r--tests/phpunit/includes/LocalFileTest.php22
-rw-r--r--tests/phpunit/includes/MWExceptionHandlerTest.php73
-rw-r--r--tests/phpunit/includes/MWFunctionTest.php47
-rw-r--r--tests/phpunit/includes/MWNamespaceTest.php21
-rw-r--r--tests/phpunit/includes/MessageTest.php78
-rw-r--r--tests/phpunit/includes/OutputPageTest.php73
-rw-r--r--tests/phpunit/includes/PathRouterTest.php36
-rw-r--r--tests/phpunit/includes/PreferencesTest.php23
-rw-r--r--tests/phpunit/includes/Providers.php44
-rw-r--r--tests/phpunit/includes/RecentChangeTest.php34
-rw-r--r--tests/phpunit/includes/RequestContextTest.php8
-rw-r--r--tests/phpunit/includes/ResourceLoaderTest.php62
-rw-r--r--tests/phpunit/includes/RevisionStorageTest.php16
-rw-r--r--tests/phpunit/includes/RevisionStorageTest_ContentHandlerUseDB.php20
-rw-r--r--tests/phpunit/includes/RevisionTest.php78
-rw-r--r--tests/phpunit/includes/SampleTest.php4
-rw-r--r--tests/phpunit/includes/SanitizerTest.php114
-rw-r--r--tests/phpunit/includes/SanitizerValidateEmailTest.php35
-rw-r--r--tests/phpunit/includes/SeleniumConfigurationTest.php222
-rw-r--r--tests/phpunit/includes/SiteConfigurationTest.php39
-rw-r--r--tests/phpunit/includes/StringUtilsTest.php166
-rw-r--r--tests/phpunit/includes/TemplateCategoriesTest.php24
-rw-r--r--tests/phpunit/includes/TestUser.php7
-rw-r--r--tests/phpunit/includes/TimeAdjustTest.php40
-rw-r--r--tests/phpunit/includes/TimestampTest.php264
-rw-r--r--tests/phpunit/includes/TitleMethodsTest.php20
-rw-r--r--tests/phpunit/includes/TitlePermissionTest.php142
-rw-r--r--tests/phpunit/includes/TitleTest.php194
-rw-r--r--tests/phpunit/includes/UIDGeneratorTest.php22
-rw-r--r--tests/phpunit/includes/UserMailerTest.php14
-rw-r--r--tests/phpunit/includes/UserTest.php20
-rw-r--r--tests/phpunit/includes/WebRequestTest.php114
-rw-r--r--tests/phpunit/includes/WikiPageTest.php68
-rw-r--r--tests/phpunit/includes/WikiPageTest_ContentHandlerUseDB.php25
-rw-r--r--tests/phpunit/includes/XmlJsTest.php25
-rw-r--r--tests/phpunit/includes/XmlSelectTest.php39
-rw-r--r--tests/phpunit/includes/XmlTest.php132
-rw-r--r--tests/phpunit/includes/XmlTypeCheckTest.php30
-rw-r--r--tests/phpunit/includes/ZipDirectoryReaderTest.php27
-rw-r--r--tests/phpunit/includes/api/ApiAccountCreationTest.php56
-rw-r--r--tests/phpunit/includes/api/ApiBlockTest.php21
-rw-r--r--tests/phpunit/includes/api/ApiEditPageTest.php107
-rw-r--r--tests/phpunit/includes/api/ApiOptionsTest.php38
-rw-r--r--tests/phpunit/includes/api/ApiParseTest.php5
-rw-r--r--tests/phpunit/includes/api/ApiPurgeTest.php3
-rw-r--r--tests/phpunit/includes/api/ApiTest.php47
-rw-r--r--tests/phpunit/includes/api/ApiTestCase.php40
-rw-r--r--tests/phpunit/includes/api/ApiTestCaseUpload.php4
-rw-r--r--tests/phpunit/includes/api/ApiUploadTest.php42
-rw-r--r--tests/phpunit/includes/api/ApiWatchTest.php55
-rw-r--r--tests/phpunit/includes/api/RandomImageGenerator.php13
-rw-r--r--tests/phpunit/includes/api/format/ApiFormatPhpTest.php4
-rw-r--r--tests/phpunit/includes/api/generateRandomImages.php6
-rw-r--r--tests/phpunit/includes/api/query/ApiQueryBasicTest.php77
-rw-r--r--tests/phpunit/includes/api/query/ApiQueryContinue2Test.php14
-rw-r--r--tests/phpunit/includes/api/query/ApiQueryContinueTest.php198
-rw-r--r--tests/phpunit/includes/api/query/ApiQueryContinueTestBase.php62
-rw-r--r--tests/phpunit/includes/api/query/ApiQueryRevisionsTest.php2
-rw-r--r--tests/phpunit/includes/api/query/ApiQueryTest.php7
-rw-r--r--tests/phpunit/includes/api/query/ApiQueryTestBase.php15
-rw-r--r--tests/phpunit/includes/cache/GenderCacheTest.php9
-rw-r--r--tests/phpunit/includes/cache/MessageCacheTest.php128
-rw-r--r--tests/phpunit/includes/cache/ProcessCacheLRUTest.php24
-rw-r--r--tests/phpunit/includes/content/ContentHandlerTest.php99
-rw-r--r--tests/phpunit/includes/content/CssContentTest.php8
-rw-r--r--tests/phpunit/includes/content/JavaScriptContentTest.php20
-rw-r--r--tests/phpunit/includes/content/TextContentTest.php43
-rw-r--r--tests/phpunit/includes/content/WikitextContentHandlerTest.php44
-rw-r--r--tests/phpunit/includes/content/WikitextContentTest.php24
-rw-r--r--tests/phpunit/includes/db/DatabaseMysqlBaseTest.php209
-rw-r--r--tests/phpunit/includes/db/DatabaseSQLTest.php633
-rw-r--r--tests/phpunit/includes/db/DatabaseSqliteTest.php46
-rw-r--r--tests/phpunit/includes/db/DatabaseTest.php62
-rw-r--r--tests/phpunit/includes/db/DatabaseTestHelper.php166
-rw-r--r--tests/phpunit/includes/db/ORMRowTest.php1
-rw-r--r--tests/phpunit/includes/db/ORMTableTest.php2
-rw-r--r--tests/phpunit/includes/db/TestORMRowTest.php52
-rw-r--r--tests/phpunit/includes/debug/MWDebugTest.php8
-rw-r--r--tests/phpunit/includes/filebackend/FileBackendTest.php251
-rw-r--r--tests/phpunit/includes/filerepo/FileRepoTest.php25
-rw-r--r--tests/phpunit/includes/filerepo/StoreBatchTest.php13
-rw-r--r--tests/phpunit/includes/installer/InstallDocFormatterTest.php7
-rw-r--r--tests/phpunit/includes/installer/OracleInstallerTest.php48
-rw-r--r--tests/phpunit/includes/jobqueue/JobQueueTest.php129
-rw-r--r--tests/phpunit/includes/json/FormatJsonTest.php161
-rw-r--r--tests/phpunit/includes/json/ServicesJsonTest.php93
-rw-r--r--tests/phpunit/includes/libs/CSSJanusTest.php72
-rw-r--r--tests/phpunit/includes/libs/CSSMinTest.php12
-rw-r--r--tests/phpunit/includes/libs/GenericArrayObjectTest.php3
-rw-r--r--tests/phpunit/includes/libs/IEUrlExtensionTest.php30
-rw-r--r--tests/phpunit/includes/libs/JavaScriptMinifierTest.php8
-rw-r--r--tests/phpunit/includes/media/BitmapMetadataHandlerTest.php29
-rw-r--r--tests/phpunit/includes/media/BitmapScalingTest.php47
-rw-r--r--tests/phpunit/includes/media/ExifBitmapTest.php53
-rw-r--r--tests/phpunit/includes/media/ExifRotationTest.php49
-rw-r--r--tests/phpunit/includes/media/ExifTest.php12
-rw-r--r--tests/phpunit/includes/media/FakeDimensionFile.php28
-rw-r--r--tests/phpunit/includes/media/FormatMetadataTest.php11
-rw-r--r--tests/phpunit/includes/media/GIFMetadataExtractorTest.php1
-rw-r--r--tests/phpunit/includes/media/GIFTest.php16
-rw-r--r--tests/phpunit/includes/media/IPTCTest.php31
-rw-r--r--tests/phpunit/includes/media/JpegMetadataExtractorTest.php5
-rw-r--r--tests/phpunit/includes/media/JpegTest.php10
-rw-r--r--tests/phpunit/includes/media/MediaHandlerTest.php7
-rw-r--r--tests/phpunit/includes/media/PNGMetadataExtractorTest.php32
-rw-r--r--tests/phpunit/includes/media/PNGTest.php16
-rw-r--r--tests/phpunit/includes/media/SVGMetadataExtractorTest.php9
-rw-r--r--tests/phpunit/includes/media/TiffTest.php20
-rw-r--r--tests/phpunit/includes/media/XMPTest.php17
-rw-r--r--tests/phpunit/includes/media/XMPValidateTest.php5
-rw-r--r--tests/phpunit/includes/normal/CleanUpTest.php32
-rw-r--r--tests/phpunit/includes/objectcache/BagOStuffTest.php13
-rw-r--r--tests/phpunit/includes/parser/MagicVariableTest.php107
-rw-r--r--tests/phpunit/includes/parser/MediaWikiParserTest.php108
-rw-r--r--tests/phpunit/includes/parser/NewParserTest.php347
-rw-r--r--tests/phpunit/includes/parser/ParserMethodsTest.php48
-rw-r--r--tests/phpunit/includes/parser/ParserOutputTest.php12
-rw-r--r--tests/phpunit/includes/parser/ParserPreloadTest.php18
-rw-r--r--tests/phpunit/includes/parser/PreprocessorTest.php38
-rw-r--r--tests/phpunit/includes/parser/TagHooksTest.php8
-rw-r--r--tests/phpunit/includes/parser/TidyTest.php44
-rw-r--r--tests/phpunit/includes/search/SearchEngineTest.php14
-rw-r--r--tests/phpunit/includes/search/SearchUpdateTest.php15
-rw-r--r--tests/phpunit/includes/site/MediaWikiSiteTest.php5
-rw-r--r--tests/phpunit/includes/site/SiteListTest.php9
-rw-r--r--tests/phpunit/includes/site/SiteSQLStoreTest.php13
-rw-r--r--tests/phpunit/includes/site/SiteTest.php33
-rw-r--r--tests/phpunit/includes/site/TestSites.php1
-rw-r--r--tests/phpunit/includes/specials/QueryAllSpecialPagesTest.php2
-rw-r--r--tests/phpunit/includes/specials/SpecialPreferencesTest.php60
-rw-r--r--tests/phpunit/includes/specials/SpecialRecentchangesTest.php2
-rw-r--r--tests/phpunit/includes/specials/SpecialSearchTest.php9
-rw-r--r--tests/phpunit/includes/upload/UploadBaseTest.php (renamed from tests/phpunit/includes/upload/UploadTest.php)15
-rw-r--r--tests/phpunit/includes/upload/UploadFromUrlTest.php18
-rw-r--r--tests/phpunit/includes/upload/UploadStashTest.php3
-rw-r--r--tests/phpunit/install-phpunit.sh2
-rw-r--r--tests/phpunit/languages/LanguageAmTest.php18
-rw-r--r--tests/phpunit/languages/LanguageArTest.php29
-rw-r--r--tests/phpunit/languages/LanguageBeTest.php18
-rw-r--r--tests/phpunit/languages/LanguageBe_taraskTest.php59
-rw-r--r--tests/phpunit/languages/LanguageBhoTest.php19
-rw-r--r--tests/phpunit/languages/LanguageBsTest.php19
-rw-r--r--tests/phpunit/languages/LanguageClassesTestCase.php58
-rw-r--r--tests/phpunit/languages/LanguageCsTest.php19
-rw-r--r--tests/phpunit/languages/LanguageCuTest.php31
-rw-r--r--tests/phpunit/languages/LanguageCyTest.php19
-rw-r--r--tests/phpunit/languages/LanguageDsbTest.php19
-rw-r--r--tests/phpunit/languages/LanguageFrTest.php19
-rw-r--r--tests/phpunit/languages/LanguageGaTest.php19
-rw-r--r--tests/phpunit/languages/LanguageGdTest.php39
-rw-r--r--tests/phpunit/languages/LanguageGvTest.php21
-rw-r--r--tests/phpunit/languages/LanguageHeTest.php119
-rw-r--r--tests/phpunit/languages/LanguageHiTest.php19
-rw-r--r--tests/phpunit/languages/LanguageHrTest.php19
-rw-r--r--tests/phpunit/languages/LanguageHsbTest.php19
-rw-r--r--tests/phpunit/languages/LanguageHuTest.php19
-rw-r--r--tests/phpunit/languages/LanguageHyTest.php20
-rw-r--r--tests/phpunit/languages/LanguageKshTest.php19
-rw-r--r--tests/phpunit/languages/LanguageLnTest.php19
-rw-r--r--tests/phpunit/languages/LanguageLtTest.php38
-rw-r--r--tests/phpunit/languages/LanguageLvTest.php19
-rw-r--r--tests/phpunit/languages/LanguageMgTest.php19
-rw-r--r--tests/phpunit/languages/LanguageMkTest.php21
-rw-r--r--tests/phpunit/languages/LanguageMlTest.php11
-rw-r--r--tests/phpunit/languages/LanguageMoTest.php18
-rw-r--r--tests/phpunit/languages/LanguageMtTest.php59
-rw-r--r--tests/phpunit/languages/LanguageNlTest.php6
-rw-r--r--tests/phpunit/languages/LanguageNsoTest.php22
-rw-r--r--tests/phpunit/languages/LanguagePlTest.php59
-rw-r--r--tests/phpunit/languages/LanguageRoTest.php18
-rw-r--r--tests/phpunit/languages/LanguageRuTest.php44
-rw-r--r--tests/phpunit/languages/LanguageSeTest.php27
-rw-r--r--tests/phpunit/languages/LanguageSgsTest.php27
-rw-r--r--tests/phpunit/languages/LanguageShTest.php30
-rw-r--r--tests/phpunit/languages/LanguageSkTest.php18
-rw-r--r--tests/phpunit/languages/LanguageSlTest.php22
-rw-r--r--tests/phpunit/languages/LanguageSmaTest.php27
-rw-r--r--tests/phpunit/languages/LanguageSrTest.php84
-rw-r--r--tests/phpunit/languages/LanguageTest.php311
-rw-r--r--tests/phpunit/languages/LanguageTiTest.php22
-rw-r--r--tests/phpunit/languages/LanguageTlTest.php22
-rw-r--r--tests/phpunit/languages/LanguageTrTest.php5
-rw-r--r--tests/phpunit/languages/LanguageUkTest.php35
-rw-r--r--tests/phpunit/languages/LanguageUzTest.php28
-rw-r--r--tests/phpunit/languages/LanguageWaTest.php22
-rw-r--r--tests/phpunit/languages/utils/CLDRPluralRuleEvaluatorTest.php2
-rw-r--r--tests/phpunit/maintenance/DumpTestCase.php26
-rw-r--r--tests/phpunit/maintenance/MaintenanceTest.php6
-rw-r--r--tests/phpunit/maintenance/backupPrefetchTest.php3
-rw-r--r--tests/phpunit/maintenance/backupTextPassTest.php7
-rw-r--r--tests/phpunit/maintenance/backup_LogTest.php4
-rw-r--r--tests/phpunit/maintenance/backup_PageTest.php6
-rw-r--r--tests/phpunit/maintenance/fetchTextTest.php2
-rw-r--r--tests/phpunit/maintenance/getSlaveServerTest.php2
-rw-r--r--tests/phpunit/mocks/filebackend/MockFSFile.php69
-rw-r--r--tests/phpunit/mocks/filebackend/MockFileBackend.php122
-rw-r--r--tests/phpunit/mocks/media/MockBitmapHandler.php92
-rw-r--r--tests/phpunit/phpunit.php24
-rw-r--r--tests/phpunit/skins/SideBarTest.php75
-rw-r--r--tests/phpunit/structure/AutoLoaderTest.php (renamed from tests/phpunit/AutoLoaderTest.php)7
-rw-r--r--tests/phpunit/structure/ResourcesTest.php (renamed from tests/phpunit/resources/ResourcesTest.php)17
-rw-r--r--tests/phpunit/structure/StructureTest.php (renamed from tests/phpunit/StructureTest.php)4
-rw-r--r--tests/phpunit/suite.xml27
-rw-r--r--tests/phpunit/suites/ExtensionsParserTestSuite.php8
-rw-r--r--tests/phpunit/suites/UploadFromUrlTestSuite.php13
-rw-r--r--tests/qunit/QUnitTestResources.php4
-rw-r--r--tests/qunit/data/generateJqueryMsgData.php4
-rw-r--r--tests/qunit/data/load.mock.php3
-rw-r--r--tests/qunit/data/testrunner.js29
-rw-r--r--tests/qunit/suites/resources/jquery/jquery.byteLength.test.js24
-rw-r--r--tests/qunit/suites/resources/jquery/jquery.byteLimit.test.js120
-rw-r--r--tests/qunit/suites/resources/jquery/jquery.client.test.js283
-rw-r--r--tests/qunit/suites/resources/jquery/jquery.localize.test.js10
-rw-r--r--tests/qunit/suites/resources/jquery/jquery.makeCollapsible.test.js287
-rw-r--r--tests/qunit/suites/resources/jquery/jquery.tablesorter.test.js166
-rw-r--r--tests/qunit/suites/resources/jquery/jquery.textSelection.test.js7
-rw-r--r--tests/qunit/suites/resources/mediawiki.special/mediawiki.special.recentchanges.test.js2
-rw-r--r--tests/qunit/suites/resources/mediawiki/mediawiki.Title.test.js268
-rw-r--r--tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js337
-rw-r--r--tests/qunit/suites/resources/mediawiki/mediawiki.test.js171
-rw-r--r--tests/qunit/suites/resources/mediawiki/mediawiki.user.test.js6
-rw-r--r--tests/qunit/suites/resources/mediawiki/mediawiki.util.test.js91
-rw-r--r--tests/qunit/suites/resources/startup.test.js129
-rw-r--r--tests/selenium/Selenium.php191
-rw-r--r--tests/selenium/SeleniumConfig.php80
-rw-r--r--tests/selenium/SeleniumLoader.php9
-rw-r--r--tests/selenium/SeleniumServerManager.php252
-rw-r--r--tests/selenium/SeleniumTestCase.php127
-rw-r--r--tests/selenium/SeleniumTestConsoleLogger.php25
-rw-r--r--tests/selenium/SeleniumTestConstants.php24
-rw-r--r--tests/selenium/SeleniumTestHTMLLogger.php36
-rw-r--r--tests/selenium/SeleniumTestListener.php65
-rw-r--r--tests/selenium/SeleniumTestSuite.php57
-rw-r--r--tests/selenium/data/SimpleSeleniumTestDB.sql1453
-rw-r--r--tests/selenium/data/SimpleSeleniumTestImages.zipbin21993 -> 0 bytes
-rw-r--r--tests/selenium/data/Wikipedia-logo-v2-de.pngbin21479 -> 0 bytes
-rw-r--r--tests/selenium/data/mediawiki118_fresh_installation.sql1543
-rw-r--r--tests/selenium/installer/MediaWikiButtonsAvailabilityTestCase.php90
-rw-r--r--tests/selenium/installer/MediaWikiDifferentDatabaseAccountTestCase.php73
-rw-r--r--tests/selenium/installer/MediaWikiDifferntDatabasePrefixTestCase.php88
-rw-r--r--tests/selenium/installer/MediaWikiErrorsConnectToDatabasePageTestCase.php131
-rw-r--r--tests/selenium/installer/MediaWikiErrorsNamepageTestCase.php119
-rw-r--r--tests/selenium/installer/MediaWikiHelpFieldHintTestCase.php128
-rw-r--r--tests/selenium/installer/MediaWikiInstallationCommonFunction.php259
-rw-r--r--tests/selenium/installer/MediaWikiInstallationConfig.php45
-rw-r--r--tests/selenium/installer/MediaWikiInstallationMessage.php53
-rw-r--r--tests/selenium/installer/MediaWikiInstallationVariables.php73
-rw-r--r--tests/selenium/installer/MediaWikiInstallerTestSuite.php49
-rw-r--r--tests/selenium/installer/MediaWikiMySQLDataBaseTestCase.php71
-rw-r--r--tests/selenium/installer/MediaWikiMySQLiteDataBaseTestCase.php73
-rw-r--r--tests/selenium/installer/MediaWikiOnAlreadyInstalledTestCase.php65
-rw-r--r--tests/selenium/installer/MediaWikiRestartInstallationTestCase.php104
-rw-r--r--tests/selenium/installer/MediaWikiRightFrameworkLinksTestCase.php83
-rw-r--r--tests/selenium/installer/MediaWikiUpgradeExistingDatabaseTestCase.php111
-rw-r--r--tests/selenium/installer/MediaWikiUserInterfaceTestCase.php494
-rw-r--r--tests/selenium/installer/README.txt32
-rw-r--r--tests/selenium/selenium_settings.ini.sample32
-rw-r--r--tests/selenium/selenium_settings_grid.ini.sample16
-rw-r--r--tests/selenium/suites/AddContentToNewPageTestCase.php173
-rw-r--r--tests/selenium/suites/AddNewPageTestCase.php59
-rw-r--r--tests/selenium/suites/CreateAccountTestCase.php109
-rw-r--r--tests/selenium/suites/DeletePageAdminTestCase.php82
-rw-r--r--tests/selenium/suites/EmailPasswordTestCase.php74
-rw-r--r--tests/selenium/suites/MediaWikiEditorConfig.php41
-rw-r--r--tests/selenium/suites/MediaWikiEditorTestSuite.php19
-rw-r--r--tests/selenium/suites/MediaWikiExtraTestSuite.php21
-rw-r--r--tests/selenium/suites/MediawikiCoreSmokeTestCase.php70
-rw-r--r--tests/selenium/suites/MediawikiCoreSmokeTestSuite.php19
-rw-r--r--tests/selenium/suites/MovePageTestCase.php111
-rw-r--r--tests/selenium/suites/MyContributionsTestCase.php59
-rw-r--r--tests/selenium/suites/MyWatchListTestCase.php51
-rw-r--r--tests/selenium/suites/PageDeleteTestSuite.php15
-rw-r--r--tests/selenium/suites/PageSearchTestCase.php98
-rw-r--r--tests/selenium/suites/PreviewPageTestCase.php48
-rw-r--r--tests/selenium/suites/SavePageTestCase.php53
-rw-r--r--tests/selenium/suites/SimpleSeleniumConfig.php30
-rw-r--r--tests/selenium/suites/SimpleSeleniumTestCase.php39
-rw-r--r--tests/selenium/suites/SimpleSeleniumTestSuite.php26
-rw-r--r--tests/selenium/suites/UserPreferencesTestCase.php170
-rw-r--r--tests/testHelpers.inc33
-rw-r--r--thumb.php198
-rw-r--r--thumb_handler.php2
-rw-r--r--wiki.phtml2
1906 files changed, 98835 insertions, 66825 deletions
diff --git a/.gitreview b/.gitreview
index 65dbc270..0ec44b83 100644
--- a/.gitreview
+++ b/.gitreview
@@ -2,5 +2,5 @@
host=gerrit.wikimedia.org
port=29418
project=mediawiki/core.git
-defaultbranch=REL1_21
+defaultbranch=master
defaultrebase=0
diff --git a/.jshintignore b/.jshintignore
index 3869deb9..f740f137 100644
--- a/.jshintignore
+++ b/.jshintignore
@@ -1,3 +1,7 @@
+# Generated documentation
+docs/html/
+docs/js/
+
# third-party libs
extensions/
node_modules/
@@ -19,9 +23,7 @@ resources/jquery.effects/
resources/jquery.tipsy/
resources/jquery.ui/
resources/mediawiki.libs/
-
-# legacy scripts
-skins/common/
+resources/jquery.chosen/chosen.jquery.js
# github.com/jshint/jshint/issues/729
tests/qunit/suites/resources/mediawiki/mediawiki.jscompat.test.js
diff --git a/.jshintrc b/.jshintrc
index 7fa138d4..c4e265a4 100644
--- a/.jshintrc
+++ b/.jshintrc
@@ -1,15 +1,10 @@
{
- "predef": [
- "mediaWiki",
- "jQuery",
- "QUnit"
- ],
+ /* Common */
- "bitwise": true,
+ // Enforcing
"camelcase": true,
"curly": true,
"eqeqeq": true,
- "forin": false,
"immed": true,
"latedef": true,
"newcap": true,
@@ -17,18 +12,31 @@
"noempty": true,
"nonew": true,
"quotmark": "single",
- "regexp": false,
+ "trailing": true,
"undef": true,
"unused": true,
- "strict": false,
- "trailing": true,
+ // Legacy
+ "onevar": true,
+
+ /* Local */
+ // Enforcing
+ "bitwise": true,
+ "forin": false,
+ "regexp": false,
+ "strict": false,
+ // Relaxing
"laxbreak": true,
"smarttabs": true,
"multistr": true,
-
+ // Environment
"browser": true,
-
+ // Legacy
"nomen": true,
- "onevar": true
+
+ "predef": [
+ "mediaWiki",
+ "jQuery",
+ "QUnit"
+ ]
}
diff --git a/COPYING b/COPYING
index 019694a9..c3bed284 100644
--- a/COPYING
+++ b/COPYING
@@ -1,3 +1,41 @@
+== License and copyright information ==
+
+=== License ===
+
+MediaWiki is licensed under the terms of the GNU General Public License,
+version 2 or later. Derivative works and later versions of the code must be
+free software licensed under the same or a compatible license. This includes
+"extensions" that use MediaWiki functions or variables; see
+http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins for details.
+
+For the full text of version 2 of the license, see
+https://www.gnu.org/licenses/gpl-2.0.html or '''GNU General Public License'''
+below.
+
+=== Copyright owners ===
+
+MediaWiki contributors, including those listed in the CREDITS file, hold the
+copyright to this work.
+
+=== Additional license information ===
+
+Some components of MediaWiki imported from other projects may be under other
+Free and Open Source, or Free Culture, licenses. Specific details of their
+licensing information can be found in those components.
+
+Sections of code written exclusively by Lee Crocker or Erik Moeller are also
+released into the public domain, which does not impair the obligations of users
+under the GPL for use of the whole code or other sections thereof.
+
+MediaWiki uses the following Creative Commons icons to illustrate links to the
+CC licenses:
+
+* skins/common/images/cc-by-nc-sa.png
+* skins/common/images/cc-by-sa.png
+
+These icons are trademarked, and used subject to the CC trademark license,
+available at http://creativecommons.org/policies#trademark
+
== GNU GENERAL PUBLIC LICENSE ==
Version 2, June 1991
diff --git a/CREDITS b/CREDITS
index 9c49a9b4..54aca716 100644
--- a/CREDITS
+++ b/CREDITS
@@ -1,4 +1,4 @@
-MediaWiki 1.21 is a collaborative project released under the
+MediaWiki 1.22 is a collaborative project released under the
GNU General Public License v2. We would like to recognize the
following names for their contribution to the product.
@@ -22,6 +22,7 @@ following names for their contribution to the product.
* church of emacs
* Daniel Friesen
* Daniel Kinzler
+* Daniel Renfro
* Danny B.
* David McCabe
* Derk-Jan Hartman
@@ -80,7 +81,7 @@ following names for their contribution to the product.
* Thomas Bleher
* Tim Starling
* Timo Tijhof
-* Tom Gries
+* Thomas Gries
* Trevor Parscal
* Victor Vasiliev
* Yesid Carrillo
@@ -122,6 +123,7 @@ following names for their contribution to the product.
* David Baumgarten
* Denny Vrandecic
* Dévai Tamás
+* Ebrahim Byagowi
* Edward Z. Yang
* Elvis Stansvik
* Erwin Dokter
@@ -143,6 +145,7 @@ following names for their contribution to the product.
* Jimmy Xu
* Jonathan Wiltshire
* John N
+* JuneHyeon Bae
* Jure Kajzer
* Karun Dambiec
* Katie Filbert
@@ -159,7 +162,7 @@ following names for their contribution to the product.
* Manuel Menal
* Marcin Cieślak
* Marcus Buck
-* Mark A. Pelletier
+* Marc-André Pelletier
* Mark Hershberger
* Mark Holmquist
* Marooned
@@ -234,10 +237,5 @@ following names for their contribution to the product.
* Zachary Hauri
== Translators ==
-* Anders Wegge Jakobsen
-* Hk kng
-* Hojjat
-* Meno25
-* Rotem Liss
-* Shinjiman
-* [https://translatewiki.net/wiki/Special:ListUsers/translator Translatewiki.net Translators]
+
+* [https://translatewiki.net/wiki/Translating:MediaWiki/Credits Translators on translatewiki.net and others]
diff --git a/HISTORY b/HISTORY
index 02ba8d89..45eab2e9 100644
--- a/HISTORY
+++ b/HISTORY
@@ -1,4 +1,337 @@
-Change notes from older releases. For current info see RELEASE-NOTES-1.21.
+Change notes from older releases. For current info see RELEASE-NOTES-1.22.
+
+== MediaWiki 1.21 ==
+
+MediaWiki 1.21 is an alpha-quality branch and is not recommended for use in
+production.
+
+=== Configuration changes in 1.21 ===
+* (bug 29374) $wgVectorUseSimpleSearch is now enabled by default.
+* Deprecated $wgAllowRealName is removed. Use $wgHiddenPrefs[] = 'realname'
+ instead.
+* (bug 39957) Added $wgUnwatchedPageThreshold, specifying minimum count
+ of page watchers required for the number to be accessible to users
+ without the unwatchedpages permission.
+* $wgBug34832TransitionalRollback has been removed.
+* (bug 29472) $wgUseDynamicDates has been removed and its functionality
+ disabled.
+
+=== New features in 1.21 ===
+* (bug 38110) Schema changes (adding or dropping tables, indices and
+ fields) can be now be done separately from from other changes that
+ update.php makes. This is useful in environments that use database
+ permissions to restrict schema changes but allow the DB user that
+ MediaWiki normally runs as to perform other changes that update.php
+ makes. Schema changes can be run separately. See the file UPGRADE
+ for more information.
+* (bug 34876) jquery.makeCollapsible has been improved in performance.
+* Added ContentHandler facility to allow extensions to support other content
+ than wikitext. See docs/contenthandler.txt for details.
+* New feature was developed for showing high-DPI thumbnails for high-DPI mobile
+ and desktop displays (configurable with $wgResponsiveImages).
+* Added new backend to represent and store information about sites and site
+ specific configuration.
+* jQuery upgraded from 1.8.2 to 1.8.3.
+* jQuery UI upgraded from 1.8.23 to 1.8.24.
+* Added separate fa_sha1 field to filearchive table. This allows sha1
+ searches with the api in miser mode for deleted files.
+* Add initial and programmatic sorting for tablesorter.
+* Add the event "sortEnd.tablesorter", triggered after sorting has completed.
+* The Job system was refactored to allow for different backing stores for
+ queues as well as cross-wiki access to queues, among other things. The schema
+ for the DB queue was changed to support better concurrency and reduce
+ deadlock errors.
+* Added ApiQueryORM class to facilitate creation of query API modules based on
+ tables that have a corresponding ORMTable class.
+* (bug 40876) Icon for PSD (Adobe Photoshop) file types.
+* (bug 40641) Implemented Special:Version/Credits with a list of contributors.
+* (bug 7851) Implemented one-click AJAX patrolling.
+* The <data>, <time>, <meta>, and <link> elements are allowed within WikiText
+ for use with Microdata.
+* The HTML5 <mark> tag has been whitelisted.
+* Added ParserCloned hook for when the Parser object is cloned.
+* Added AlternateEditPreview hook to allow extensions to replace the page
+ preview from the edit page.
+* Added EditPage::showStandardInputs:options hook to allow extensions to add
+ new fields to the "editOptions" area of the edit form.
+* Upload stash DB schema altered to improve upload performance.
+* The following global functions are now reporting deprecated warnings in
+ debug mode: wfMsg, wfMsgNoTrans, wfMsgForContent, wfMsgForContentNoTrans,
+ wfMsgReal, wfMsgGetKey, wfMsgHtml, wfMsgWikiHtml, wfMsgExt, wfEmptyMsg. Use
+ the Message class, or the global method wfMessage.
+* Added $wgEnableCanonicalServerLink, off by default. If enabled, a
+ <link rel=canonical> tag is added to every page indicating the correct server
+ to use.
+* Debug message emitted by wfDebugLog() will now be prefixed with the group
+ name when its logged to the default log file. That is the case whenever the
+ group has no key in wgDebugLogGroups, that will help triage the default log.
+* (bug 24620) Add types to LogFormatter.
+* jQuery JSON upgraded from 2.3 to 2.4.0.
+* Added GetDoubleUnderscoreIDs hook, for modifying the list of magic words.
+* DatabaseUpdater class has two new methods to ease extensions schema changes:
+ dropExtensionIndex and renameExtensionIndex.
+* New preference type - 'api'. Preferences of this type are not shown on
+ Special:Preferences, but are still available via the action=options API.
+* (bug 39397) Hide rollback link if a user is the only contributor of the page.
+* $wgPageInfoTransclusionLimit limits the list size of transcluded articles
+ on the info action. Default is 50.
+* Added action=createaccount to allow user account creation.
+* (bug 40124) action=options API also allows for setting of arbitrary
+ preferences, provided that their names are prefixed with 'userjs-'. This
+ officially reenables the feature that was undocumented and defective
+ in MW 1.20 (saving preferences using Special:Preferences cleared any
+ additional fields) and which has been disabled in 1.20.1 as a part of
+ a security fix (bug 42202).
+* Added option to specify "others" as author in extension credits using
+ "..." as author name.
+* Added the ability to limit the wall clock time used by shell processes,
+ as well as the CPU time. Configurable with $wgMaxShellWallClockTime.
+* Allow memory of shell subprocesses to be limited using Linux cgroups
+ instead of ulimit -v, which tends to cause deadlocks in recent versions
+ of ImageMagick. Configurable with $wgShellCgroup.
+* Added $wgWhitelistReadRegexp for regex whitelisting.
+* (bug 5346) Categories that are redirects will be displayed italic in
+ the category links section at the bottom of a page.
+* (bug 43915) New maintenance script deleteEqualMessages.php.
+* You can now create checkbox option matrices through the HTMLCheckMatrix
+ subclass in HTMLForm.
+* WikiText now permits the use of WAI-ARIA's role="presentation" inside of
+ html elements and tables. This allows presentational markup, especially
+ tables. To be marked up as such.
+* maintenance/sql.php learned the --cluster option. Let you run the script
+ on some external cluster instead of the primary cluster for a given wiki.
+* (bug 20281) test the parsing of inline URLs.
+* Added Special:PagesWithProp, which lists pages using a particular page property.
+* Implemented language-specific collations for category sorting for 67 languages
+ based in latin, greek and cyrillic alphabets. This allows one to *finally* get
+ articles to be correctly sorted on category pages. They are named
+ 'uca-<langcode>', where <langcode> is one of: af, ast, az, be, bg, br, bs, ca,
+ co, cs, cy, da, de, dsb, el, en, eo, es, et, eu, fi, fo, fr, fur, fy, ga, gd,
+ gl, hr, hsb, hu, is, it, kk, kl, ku, ky, la, lb, lt, lv, mk, mo, mt, nl, no,
+ oc, pl, pt, rm, ro, ru, rup, sco, sk, sl, smn, sq, sr, sv, tk, tl, tr, tt, uk,
+ uz, vi.
+* Added 'CategoryAfterPageAdded' and 'CategoryAfterPageRemoved' hooks.
+* Added 'HistoryRevisionTools' and 'DiffRevisionTools' hooks.
+* Added 'SpecialSearchResultsPrepend' and 'SpecialSearchResultsAppend' hooks.
+* (bug 33186) Add image rotation api "imagerotate"
+* (bug 34040) Add "User rights management" link on user page toolbox.
+* (bug 45526) Add QUnit assertion helper "QUnit.assert.htmlEqual" for asserting
+ structual equality of HTML (ignoring insignificant differences like
+ quotmarks, order and whitespace in the attribute list).
+* (bug 23393) HTML <hN> headings containing line breaks are now handled
+ correctly.
+* (bug 45803) Whitespace within == Headline == syntax and within <hN> headings
+ is now non-significant and not preserved in the HTML output.
+
+=== Bug fixes in 1.21 ===
+* (bug 40353) SpecialDoubleRedirect should support interwiki redirects.
+* (bug 40352) fixDoubleRedirects.php should support interwiki redirects.
+* (bug 9237) SpecialBrokenRedirect should not list interwiki redirects.
+* (bug 34960) Drop unused fields rc_moved_to_ns and rc_moved_to_title from
+ recentchanges table.
+* (bug 32951) Do not register internal externals with absolute protocol,
+ when server has relative protocol.
+* (bug 39005) When purging proxies listed in $wgSquidServers using HTTP PURGE
+ method requests, we now send a Host header by default, for Varnish
+ compatibility. This also works with Squid in reverse-proxy mode. If you wish
+ to support Squid configured in forward-proxy mode, set
+ $wgSquidPurgeUseHostHeader to false.
+* (bug 37020) sql.php with readline eats semicolon.
+* (bug 11748) Properly handle optionally-closed HTML tags when Tidy is
+ disabled, and don't wrap HTML-syntax definition lists in paragraphs.
+* (bug 41409) Diffs while editing an old revision should again diff against the
+ current revision.
+* (bug 41494) Honor $wgLogExceptionBacktrace when logging non-API exceptions
+ caught during API execution.
+* (bug 37963) Fixed loading process for user options.
+* (bug 26995) Update filename field on Upload page after having sanitized it.
+* (bug 41793) Contribution links to users with 0 edits on Special:ListUsers
+ didn't show up red.
+* (bug 41899) A PHP notice no longer occurs when using the "rvcontinue" API
+ parameter.
+* (bug 42036) Account creation emails now contain canonical (not
+ protocol-relative) URLs.
+* (bug 41990) Fix regression: API edit with redirect=true and lacking
+ starttimestamp and basetimestamp should not cause an edit conflict.
+* (bug 41706) EditPage: Preloaded page should be converted if possible and
+ needed.
+* (bug 41886) Rowspans are no longer exploded by tablesorter until the table is
+ actually sorted.
+* (bug 2865) User interface HTML elements don't use lang attribute.
+ (completed the fix by adding the lang attribute to firstHeading).
+* (bug 42173) Removed namespace prefixes on Special:UncategorizedCategories.
+* (bug 36053) Log in "returnto" feature forgets query parameters if no
+ title parameter was specified.
+* (bug 42410) API action=edit now returns correct timestamp for the new edit.
+* (bug 14901) Email notification mistakes log action for new page creation.
+ Enotif no longer sends "page has been created" notifications for some log
+ actions. The following events now have a correct message: page creation,
+ deletion, move, restore (undeletion), change (edit). Parameter
+ $CHANGEDORCREATED is deprecated in 'enotif_body' and scheduled for removal in
+ MediaWiki 1.23.
+* (bug 457) In the sidebar of Vector, CologneBlue, Monobook, and Monobook-based
+ skins, the heading levels have been changed from (variously per skin)
+ <h4>, <h5> or <h6> to only <h3>s, with a <h2> hidden heading above them.
+ If you are styling or scripting the headings in a custom way, this change
+ will require updates to your site's CSS or JS.
+* (bug 41342) jquery.suggestions should cancel any active (async) fetches
+ before it triggers another fetch.
+* (bug 42184) $wgUploadSizeWarning missing second variable.
+* (bug 34581) removeUnusedAccounts.php maintenance script now ignores newuser
+ log when determining whether an account is used.
+* (bug 43379) Gracefully fail if rev_len is unavailable for a revision on the
+ History page.
+* (bug 42949) API no longer assumes all exceptions are MWException.
+* (bug 41733) Hide "New user message" (.usermessage) element from printable view.
+* (bug 39062) Special:Contributions will display changes that don't have
+ a parent id instead of just an empty bullet item.
+* (bug 37209) "LinkCache doesn't currently know about this title" error fixed.
+* wfMerge() now works if $wgDiff3 contains spaces
+* (bug 43052) mediawiki.action.view.dblClickEdit.dblClickEdit should trigger
+ ca-edit click instead opening URL directly.
+* (bug 43964) Invalid value of "link" parameter in <gallery> no longer produces
+ a fatal error.
+* (bug 44775) The username field is not pre-filled when creating an account.
+* (bug 45069) wfParseUrl() no longer produces a PHP notice if passed a "mailto:"
+ URL without address
+* (bug 45012) Creating an account by e-mail can no longer show a
+ "password mismatch" error.
+* (bug 44599) On Special:Version, HEADs for submodule checkouts (e.g. for
+ extensions) performed using Git 1.7.8+ should now appear.
+* (bug 42184) $wgUploadSizeWarning missing second variable
+* (bug 40326) Check if files exist with a different extension during uploading
+* (bug 34798) Updated CSS for Atom/RSS recent changes feeds to match on-wiki diffs.
+* (bug 42430) Calling numRows on MySQL no longer propagates unrelated errors.
+* (bug 44719) Removed mention of non-existing maintenance/migrateCurStubs.php
+ script in includes/DefaultSettings.php
+* (bug 45143) jquery.badge: Treat non-Latin variants of zero as zero as well.
+* (bug 46151) mwdocgen.php should not ignore exit code of doxygen command.
+* (bug 41889) Fix $.tablesorter rowspan exploding for complex cases.
+
+=== API changes in 1.21 ===
+* prop=revisions can now report the contentmodel and contentformat.
+ See docs/contenthandler.txt.
+* action=edit and action=parse now support contentmodel and contentformat
+ parameters to control the interpretation of page content.
+ See docs/contenthandler.txt for details.
+* (bug 35693) ApiQueryImageInfo now suppresses errors when unserializing metadata.
+* (bug 40111) Disable minor edit for page/section creation by API.
+* (bug 41042) Revert change to action=parse&page=... behavior when the page
+ does not exist.
+* (bug 27202) Add timestamp sort to list=allimages.
+* (bug 43137) Don't return the sha1 of revisions through the API if the content is
+ revision-deleted.
+* ApiQueryImageInfo now also returns imageinfo for redirects.
+* list=alltransclusions added to enumerate every instance of page embedding
+* list=alllinks & alltransclusions now allow both 'from' and 'continue' in
+ the same query. When both are present, 'from' is simply ignored.
+* list=alllinks & alltransclusions now allow 'unique' in generators, to yield
+ a list of all link/template target pages instead of source pages.
+* BREAKING CHANGE: list=logevents output format changed for details of some log
+ types. Specifically, details that were formerly reported under a key like
+ "4::foo" will now be reported under a key of simply "foo".
+* BREAKING CHANGE: '??_badcontinue' error code was changed to '??badcontinue'
+ for all query modules.
+* ApiQueryBase adds 'badcontinue' error code if module has 'continue' parameter.
+* (bug 35885) Removed version parameter and all getVersion() methods.
+* action=options now takes a "resetkinds" option, which allows only resetting
+ certain types of preferences when the "reset" option is set.
+* (bug 36751) ApiQueryImageInfo now returns imageinfo for the redirect target
+ when queried with &redirects=.
+* (bug 31849) ApiQueryImageInfo no longer gets confused when asked for info on
+ a redirect and its target.
+* (bug 43849) ApiQueryImageInfo no longer throws exceptions with ForeignDBRepo
+ redirects.
+* On error, any warnings generated before that error will be shown in the result.
+* action=help supports generalized submodules (modules=query+value), querymodules obsolete
+* ApiQueryImageInfo continuation is more reliable. The only major change is
+ that the imagerepository property will no longer be set on page objects not
+ processed in the current query (i.e. non-images or those skipped due to
+ iicontinue).
+* Add supports for all pageset capabilities - generators, redirects, converttitles to
+ action=purge and action=setnotificationtimestamp.
+* (bug 43251) prop=pageprops&ppprop= now accepts multiple props to query.
+* ApiQueryImageInfo will now limit the number of calls to File::transform made
+ in any one query. If there are too many, iicontinue will be returned.
+* action=query&meta=siteinfo&siprop=general will now return the regexes used for
+ link trails and link prefixes. Added for Parsoid support.
+* Added an API query module list=pageswithprop, which lists pages using a
+ particular page property.
+* Added an API query module list=pagepropnames, which lists all page prop names
+ currently in use on the wiki.
+* (bug 44921) ApiMain::execute() will now return after the CORS check for an
+ HTTP OPTIONS request.
+* (bug 44923) action=upload works correctly if the entire file is uploaded in
+ the first chunk.
+* Added 'continue=' parameter to streamline client iteration over complex query results
+* (bug 44909) API parameters may now be marked as type "upload", which is now
+ used for action=upload's 'file' and 'chunk' parameters. This type will raise
+ an error during parameter validation if the parameter is given but not
+ recognized as an uploaded file.
+* (bug 44244) prop=info may now return the number of people watching each page.
+* (bug 33304) list=allpages will no longer return duplicate entries when
+ querying protection.
+* (bug 33304) list=allpages will now find really old indefinite protections.
+* (bug 45937) meta=allmessages will report a syntactically invalid lang as a
+ proper error instead of as an uncaught exception.
+* (bug 25325) added support for wlshow filtering (bots/anon/minor/patrolled)
+ to action=feedwatchlist
+* WDDX formatted output will actually be formatted (and normal output will no
+ longer be), and will no longer choke on booleans.
+
+=== API internal changes in 1.21 ===
+* For debugging only, a new global $wgDebugAPI removes many API restrictions when true.
+ Never use on the production servers, as this flag introduces security holes.
+ Whenever enabled, a warning will also be added to all output.
+* ApiModuleManager now handles all submodules (actions,props,lists) and instantiation
+* Query stores prop/list/meta as submodules
+* ApiPageSet can now be used in any action to process titles/pageids/revids or any generator.
+* BREAKING CHANGE: ApiPageSet constructor now has two params instead of three, with only the
+ first one keeping its meaning. ApiPageSet is now derived from ApiBase.
+* BREAKING CHANGE: ApiQuery::newGenerator() and executeGeneratorModule() were deleted.
+* ApiQueryGeneratorBase::setGeneratorMode() now requires a pageset param.
+* $wgAPIGeneratorModules is now obsolete and will be ignored.
+* Added flags ApiResult::OVERRIDE and ADD_ON_TOP to setElement() and addValue()
+* Internal API calls will now include <warnings> in case of unused parameters
+
+=== Languages updated in 1.21 ===
+
+MediaWiki supports over 350 languages. Many localisations are updated
+regularly. Below only new and removed languages are listed, as well as
+changes to languages because of Bugzilla reports.
+
+* South Azerbaijani (azb) added.
+* (bug 30040) Autonym for nds-nl is now 'Nedersaksies' (was 'Nedersaksisch').
+* (bug 45436) Autonym for pi (Pali) is now 'पालि' (was ''पाळि').
+* (bug 34977) Now formatted numbers in Spanish use space as separator
+ for thousands, as mandated by the Real Academia Española.
+* (bug 35031) Kurdish formatted numbers now use period and comma
+ as separators for thousands and decimals respectively.
+
+=== Other changes in 1.21 ===
+* BREAKING CHANGE: (bug 44385) Removed the jquery.collapsibleTabs module and
+ moved it to the Vector extension. It was entirely Vector-extension-specific,
+ deeply interconnected with the extension, and this functionality really
+ belongs to the extension instead of the skin anyway. In the unlikely case you
+ were using it, you have to either copy it to your extension, or install the
+ Vector extension (and possibly disable its features using config settings if
+ you don't want them).
+* Experimental IBM DB2 support was removed due to lack of interest and maintainership
+* BREAKING CHANGE: Filenames of maintenance scripts were standardized into
+ lowerCamelCase format, and made more explicit:
+ - clear_stats.php -> clearCacheStats.php
+ - clear_interwiki_cache.php -> clearInterwikiCache.php
+ - initStats.php -> initSiteStats.php
+ - proxy_check.php -> proxyCheck.php
+ - stats.php -> showCacheStats.php
+ - showStats.php -> showSiteStats.php.
+ Class names were renamed accordingly:
+ - clear_stats -> ClearCacheStats
+ - InitStats -> InitSiteStats
+ - CacheStats -> ShowCacheStats
+ - ShowStats -> ShowSiteStats.
+* BREAKING CHANGE: (bug 38244) Removed the mediawiki.api.titleblacklist module
+ and moved it to the TitleBlacklist extension.
== MediaWiki 1.20 ==
diff --git a/README b/README
index c9ce5db4..a4185ba0 100644
--- a/README
+++ b/README
@@ -1,122 +1,33 @@
-For system requirements, installation and upgrade details, see the files
-RELEASE-NOTES, INSTALL, and UPGRADE.
-
== MediaWiki ==
-MediaWiki is the software used for Wikipedia [http://www.wikipedia.org/] and the
-other Wikimedia Foundation websites. Compared to other wikis, it has an
-excellent range of features and support for high-traffic websites using
-multiple servers (Wikimedia sites peak in the 100K+ requests per second range
-as of January 2012).
-
-While quite usable on smaller sites, you may find you have to "roll your own"
-local documentation, and some aspects of configuration may seem overcomplicated
-because MediaWiki is primarily targeted as an in-house tool.
-
-The MediaWiki software was written by:
-* Lee Daniel Crocker
-* Magnus Manske
-* Jan Hidders
-* Brion Vibber
-* Axel Boldt
-* Geoffrey T. Dairiki
-* Tomasz Wegrzanowski
-* Erik Moeller
-* Tim Starling
-* Gabriel Wicke
-* Antoine Musso
-* Evan Prodromou
-* Ævar Arnfjörð Bjarmason
-* Niklas Laxström
-* Domas Mituzas
-* Rob Church
-* Jens Frank
-* Yuri Astrakhan
-* Aryeh Gregor
-* Aaron Schulz
-* Andrew Garrett
-* Raimond Spekking
-* Alexandre Emsenhuber
-* Siebrand Mazeland
-* Chad Horohoe
-* Roan Kattouw
-* Trevor Pascal
-* Bryan Tong Minh
-* Sam Reed
-* Victor Vasiliev
-* Rotem Liss
-* Platonides
-* Many others (view CREDITS for a more complete list)
-
-The contributors hold the copyright to this work, and it is licensed under the
-terms of the GNU General Public License, version 2 or later (see
-http://www.fsf.org/licensing/licenses/gpl.html). Derivative works and later
-versions of the code must be free software licensed under the same or a
-compatible license. This includes "extensions" that use MediaWiki functions or
-variables; see http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins for
-details.
-
-The Wikimedia Foundation currently has no legal rights to the software.
-
-Sections of code written exclusively by Lee Crocker or Erik Moeller are also
-released into the public domain, which does not impair the obligations of users
-under the GPL for use of the whole code or other sections thereof.
-
-MediaWiki makes use of the Sajax Toolkit by modernmethod,
-http://www.modernmethod.com/sajax/ which has the following license:
-
- 'This work is licensed under the Creative Commons Attribution
- License. To view a copy of this license, visit
- http://creativecommons.org/licenses/by/2.0/ or send a letter
- to Creative Commons, 559 Nathan Abbott Way,
- Stanford, California 94305, USA.'
-
-MediaWiki use Creative Commons license marks to points to their online
-licenses. This content is trademarked and used under a specific license
-available at http://creativecommons.org/policies#trademark
-The restricted content is:
-
-* skins/common/images/cc-by-nc-sa.png
-* skins/common/images/cc-by-sa.png
-
-Many thanks to the Wikimedia regulars for testing and suggestions.
-
-The official website for MediaWiki is located at:
+MediaWiki is a popular and free, open-source wiki software package written in
+PHP. It serves as the platform for Wikipedia and the other projects of the Wikimedia
+Foundation, which deliver content in over 280 languages to more than half a billion
+people each month. MediaWiki's reliability and robust feature set have earned it a
+large and vibrant community of third-party users and developers.
- http://www.mediawiki.org/
+MediaWiki is:
-The code is currently maintained in a Git repository at
-gerrit.wikimedia.org. See http://www.mediawiki.org/wiki/Git for details.
+* feature-rich and extensible, both on-wiki and with over 2,000 extensions;
+* scalable and suitable for both small and large sites;
+* available in your language; and
+* simple to install, working on most hardware/software combinations.
-Please report bugs and make feature requests in our Bugzilla system:
-
-* https://bugzilla.wikimedia.org/
-
-Documentation and discussion on new features may be found at:
-
-* http://www.mediawiki.org/wiki/Manual:FAQ
-* http://www.mediawiki.org/wiki/Documentation
-* http://www.mediawiki.org/wiki/Development
-
-Extensions are listed at:
-
-* http://www.mediawiki.org/wiki/Category:Extensions
-
-If you are setting up your own wiki based on this software, it is highly
-recommended that you subscribe to mediawiki-announce:
-
-* https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
-
-The mailing list is very low volume, and is intended primarily for announcements
-of new versions, bug fixes, and security issues.
-
-A higher volume support mailing list can be found at:
-
-* https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
-
-Developer discussion takes place at:
-
-* https://lists.wikimedia.org/mailman/listinfo/wikitech-l
+For system requirements, installation, and upgrade details, see the files
+RELEASE-NOTES, INSTALL, and UPGRADE.
-There is also a development and support channel #mediawiki on irc.freenode.net,
-and an unoffical support forum at www.mwusers.com.
+* Ready to get started?
+** https://www.mediawiki.org/wiki/Download
+* Looking for the technical manual?
+** https://www.mediawiki.org/wiki/Manual:Contents
+* Seeking help from a person?
+** https://www.mediawiki.org/wiki/Communication
+* Looking to file a bug report or a feature request?
+** https://bugs.mediawiki.org/
+* Interested in helping out?
+** https://www.mediawiki.org/wiki/How_to_contribute
+
+MediaWiki is the result of global collaboration and cooperation. The CREDITS
+file lists technical contributors to the project. The COPYING file explains
+MediaWiki's copyright and license (GNU General Public License, version 2 or
+later). Many thanks to the Wikimedia community for testing and suggestions.
diff --git a/README.mediawiki b/README.mediawiki
index c9ce5db4..100b9382 100644..120000
--- a/README.mediawiki
+++ b/README.mediawiki
@@ -1,122 +1 @@
-For system requirements, installation and upgrade details, see the files
-RELEASE-NOTES, INSTALL, and UPGRADE.
-
-== MediaWiki ==
-
-MediaWiki is the software used for Wikipedia [http://www.wikipedia.org/] and the
-other Wikimedia Foundation websites. Compared to other wikis, it has an
-excellent range of features and support for high-traffic websites using
-multiple servers (Wikimedia sites peak in the 100K+ requests per second range
-as of January 2012).
-
-While quite usable on smaller sites, you may find you have to "roll your own"
-local documentation, and some aspects of configuration may seem overcomplicated
-because MediaWiki is primarily targeted as an in-house tool.
-
-The MediaWiki software was written by:
-* Lee Daniel Crocker
-* Magnus Manske
-* Jan Hidders
-* Brion Vibber
-* Axel Boldt
-* Geoffrey T. Dairiki
-* Tomasz Wegrzanowski
-* Erik Moeller
-* Tim Starling
-* Gabriel Wicke
-* Antoine Musso
-* Evan Prodromou
-* Ævar Arnfjörð Bjarmason
-* Niklas Laxström
-* Domas Mituzas
-* Rob Church
-* Jens Frank
-* Yuri Astrakhan
-* Aryeh Gregor
-* Aaron Schulz
-* Andrew Garrett
-* Raimond Spekking
-* Alexandre Emsenhuber
-* Siebrand Mazeland
-* Chad Horohoe
-* Roan Kattouw
-* Trevor Pascal
-* Bryan Tong Minh
-* Sam Reed
-* Victor Vasiliev
-* Rotem Liss
-* Platonides
-* Many others (view CREDITS for a more complete list)
-
-The contributors hold the copyright to this work, and it is licensed under the
-terms of the GNU General Public License, version 2 or later (see
-http://www.fsf.org/licensing/licenses/gpl.html). Derivative works and later
-versions of the code must be free software licensed under the same or a
-compatible license. This includes "extensions" that use MediaWiki functions or
-variables; see http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins for
-details.
-
-The Wikimedia Foundation currently has no legal rights to the software.
-
-Sections of code written exclusively by Lee Crocker or Erik Moeller are also
-released into the public domain, which does not impair the obligations of users
-under the GPL for use of the whole code or other sections thereof.
-
-MediaWiki makes use of the Sajax Toolkit by modernmethod,
-http://www.modernmethod.com/sajax/ which has the following license:
-
- 'This work is licensed under the Creative Commons Attribution
- License. To view a copy of this license, visit
- http://creativecommons.org/licenses/by/2.0/ or send a letter
- to Creative Commons, 559 Nathan Abbott Way,
- Stanford, California 94305, USA.'
-
-MediaWiki use Creative Commons license marks to points to their online
-licenses. This content is trademarked and used under a specific license
-available at http://creativecommons.org/policies#trademark
-The restricted content is:
-
-* skins/common/images/cc-by-nc-sa.png
-* skins/common/images/cc-by-sa.png
-
-Many thanks to the Wikimedia regulars for testing and suggestions.
-
-The official website for MediaWiki is located at:
-
- http://www.mediawiki.org/
-
-The code is currently maintained in a Git repository at
-gerrit.wikimedia.org. See http://www.mediawiki.org/wiki/Git for details.
-
-Please report bugs and make feature requests in our Bugzilla system:
-
-* https://bugzilla.wikimedia.org/
-
-Documentation and discussion on new features may be found at:
-
-* http://www.mediawiki.org/wiki/Manual:FAQ
-* http://www.mediawiki.org/wiki/Documentation
-* http://www.mediawiki.org/wiki/Development
-
-Extensions are listed at:
-
-* http://www.mediawiki.org/wiki/Category:Extensions
-
-If you are setting up your own wiki based on this software, it is highly
-recommended that you subscribe to mediawiki-announce:
-
-* https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
-
-The mailing list is very low volume, and is intended primarily for announcements
-of new versions, bug fixes, and security issues.
-
-A higher volume support mailing list can be found at:
-
-* https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
-
-Developer discussion takes place at:
-
-* https://lists.wikimedia.org/mailman/listinfo/wikitech-l
-
-There is also a development and support channel #mediawiki on irc.freenode.net,
-and an unoffical support forum at www.mwusers.com.
+README \ No newline at end of file
diff --git a/RELEASE-NOTES-1.21 b/RELEASE-NOTES-1.21
deleted file mode 100644
index c0c956c6..00000000
--- a/RELEASE-NOTES-1.21
+++ /dev/null
@@ -1,443 +0,0 @@
-= MediaWiki release notes =
-
-Security reminder: MediaWiki does not require PHP's register_globals. If you
-have it on, turn it '''off''' if you can.
-
-== MediaWiki 1.21.3 ==
-
-This is a security adn maintenance release of the MediaWiki 1.21 branch.
-
-=== Changes since 1.21.2 ===
-
-* (bug 53032) SECURITY: Don't cache when a call could autocreate
-* (bug 55332) SECURITY: Improve css javascript detection
-* (bug 49717) Fix behaviour $wgVerifyMimeType = false; in Upload
-* Fix comma errors in various js files
-* Translations
-
-== MediaWiki 1.21.2 ==
-
-This is a security adn maintenance release of the MediaWiki 1.21 branch.
-
-=== Changes since 1.21.1 ===
-
-* SECURITY: Fix extension detection with 2 .'s
-* SECURITY: Support for the 'gettoken' parameter to action=block and action=unblock,
- deprecated since 1.20, has been removed.
-* SECURITY: Sanitize ResourceLoader exception messages
-* Purge upstream caches when deleting file assets.
-* Unit test suite now runs the AutoLoader tests. Also fixed the autoloading
- entry for the PageORMTableForTesting class though it had no impact.
-
-== MediaWiki 1.21.1 ==
-
-This is a maintenance release of the 1.21 branch.
-
-MediaWiki 1.21 is a stable branch, and is recommended for use in production.
-
-=== Changes since 1.21.0 ===
-
-* An incorrect version number was used for 1.21.0. 1.21.1 has the correct number.
-* A problem with the Oracle SQL table creation was fixed.
-* (PdfHandler extension) Fix warning if pdfinfo fails but pdftext succeeds.
-
-=== Configuration changes in 1.21 ===
-* (bug 48306) $wgAllowChunkedUploads has been added and is false by default.
-* (bug 29374) $wgVectorUseSimpleSearch is now enabled by default.
-* Deprecated $wgAllowRealName is removed. Use $wgHiddenPrefs[] = 'realname'
- instead.
-* (bug 39957) Added $wgUnwatchedPageThreshold, specifying minimum count
- of page watchers required for the number to be accessible to users
- without the unwatchedpages permission.
-* $wgBug34832TransitionalRollback has been removed.
-* (bug 29472) $wgUseDynamicDates has been removed and its functionality
- disabled.
-
-=== New features in 1.21 ===
-* (bug 41769) Add parser method to call parser functions.
-* (bug 38110) Schema changes (adding or dropping tables, indices and
- fields) can be now be done separately from from other changes that
- update.php makes. This is useful in environments that use database
- permissions to restrict schema changes but allow the DB user that
- MediaWiki normally runs as to perform other changes that update.php
- makes. Schema changes can be run separately. See the file UPGRADE
- for more information.
-* (bug 34876) jquery.makeCollapsible has been improved in performance.
-* Added ContentHandler facility to allow extensions to support other content
- than wikitext. See docs/contenthandler.txt for details.
-* New feature was developed for showing high-DPI thumbnails for high-DPI mobile
- and desktop displays (configurable with $wgResponsiveImages).
-* Added new backend to represent and store information about sites and site
- specific configuration.
-* jQuery upgraded from 1.8.2 to 1.8.3.
-* jQuery UI upgraded from 1.8.23 to 1.8.24.
-* Added separate fa_sha1 field to filearchive table. This allows sha1
- searches with the api in miser mode for deleted files.
-* Add initial and programmatic sorting for tablesorter.
-* Add the event "sortEnd.tablesorter", triggered after sorting has completed.
-* The Job system was refactored to allow for different backing stores for
- queues as well as cross-wiki access to queues, among other things. The schema
- for the DB queue was changed to support better concurrency and reduce
- deadlock errors.
-* Added ApiQueryORM class to facilitate creation of query API modules based on
- tables that have a corresponding ORMTable class.
-* (bug 40876) Icon for PSD (Adobe Photoshop) file types.
-* (bug 40641) Implemented Special:Version/Credits with a list of contributors.
-* (bug 7851) Implemented one-click AJAX patrolling.
-* The <data>, <time>, <meta>, and <link> elements are allowed within WikiText
- for use with Microdata.
-* The HTML5 <mark> tag has been whitelisted.
-* Added ParserCloned hook for when the Parser object is cloned.
-* Added AlternateEditPreview hook to allow extensions to replace the page
- preview from the edit page.
-* Added EditPage::showStandardInputs:options hook to allow extensions to add
- new fields to the "editOptions" area of the edit form.
-* Upload stash DB schema altered to improve upload performance.
-* The following global functions are now reporting deprecated warnings in
- debug mode: wfMsg, wfMsgNoTrans, wfMsgForContent, wfMsgForContentNoTrans,
- wfMsgReal, wfMsgGetKey, wfMsgHtml, wfMsgWikiHtml, wfMsgExt, wfEmptyMsg. Use
- the Message class, or the global method wfMessage.
-* Added $wgEnableCanonicalServerLink, off by default. If enabled, a
- <link rel=canonical> tag is added to every page indicating the correct server
- to use.
-* Debug message emitted by wfDebugLog() will now be prefixed with the group
- name when its logged to the default log file. That is the case whenever the
- group has no key in wgDebugLogGroups, that will help triage the default log.
-* (bug 24620) Add types to LogFormatter.
-* jQuery JSON upgraded from 2.3 to 2.4.0.
-* Added GetDoubleUnderscoreIDs hook, for modifying the list of magic words.
-* DatabaseUpdater class has two new methods to ease extensions schema changes:
- dropExtensionIndex and renameExtensionIndex.
-* New preference type - 'api'. Preferences of this type are not shown on
- Special:Preferences, but are still available via the action=options API.
-* (bug 39397) Hide rollback link if a user is the only contributor of the page.
-* $wgPageInfoTransclusionLimit limits the list size of transcluded articles
- on the info action. Default is 50.
-* Added action=createaccount to allow user account creation.
-* (bug 40124) action=options API also allows for setting of arbitrary
- preferences, provided that their names are prefixed with 'userjs-'. This
- officially reenables the feature that was undocumented and defective
- in MW 1.20 (saving preferences using Special:Preferences cleared any
- additional fields) and which has been disabled in 1.20.1 as a part of
- a security fix (bug 42202).
-* Added option to specify "others" as author in extension credits using
- "..." as author name.
-* Added the ability to limit the wall clock time used by shell processes,
- as well as the CPU time. Configurable with $wgMaxShellWallClockTime.
-* Allow memory of shell subprocesses to be limited using Linux cgroups
- instead of ulimit -v, which tends to cause deadlocks in recent versions
- of ImageMagick. Configurable with $wgShellCgroup.
-* Added $wgWhitelistReadRegexp for regex whitelisting.
-* (bug 5346) Categories that are redirects will be displayed italic in
- the category links section at the bottom of a page.
-* (bug 43915) New maintenance script deleteEqualMessages.php.
-* You can now create checkbox option matrices through the HTMLCheckMatrix
- subclass in HTMLForm.
-* WikiText now permits the use of WAI-ARIA's role="presentation" inside of
- html elements and tables. This allows presentational markup, especially
- tables. To be marked up as such.
-* maintenance/sql.php learned the --cluster option. Let you run the script
- on some external cluster instead of the primary cluster for a given wiki.
-* (bug 20281) test the parsing of inline URLs.
-* Added Special:PagesWithProp, which lists pages using a particular page property.
-* Implemented language-specific collations for category sorting for 67 languages
- based in latin, greek and cyrillic alphabets. This allows one to *finally* get
- articles to be correctly sorted on category pages. They are named
- 'uca-<langcode>', where <langcode> is one of: af, ast, az, be, bg, br, bs, ca,
- co, cs, cy, da, de, dsb, el, en, eo, es, et, eu, fi, fo, fr, fur, fy, ga, gd,
- gl, hr, hsb, hu, is, it, kk, kl, ku, ky, la, lb, lt, lv, mk, mo, mt, nl, no,
- oc, pl, pt, rm, ro, ru, rup, sco, sk, sl, smn, sq, sr, sv, tk, tl, tr, tt, uk,
- uz, vi.
-* Added 'CategoryAfterPageAdded' and 'CategoryAfterPageRemoved' hooks.
-* Added 'HistoryRevisionTools' and 'DiffRevisionTools' hooks.
-* Added 'SpecialSearchResultsPrepend' and 'SpecialSearchResultsAppend' hooks.
-* (bug 33186) Add image rotation api "imagerotate"
-* (bug 34040) Add "User rights management" link on user page toolbox.
-* (bug 45526) Add QUnit assertion helper "QUnit.assert.htmlEqual" for asserting
- structual equality of HTML (ignoring insignificant differences like
- quotmarks, order and whitespace in the attribute list).
-
-=== Bug fixes in 1.21 ===
-* (bug 48306) Chunked uploads allow arbitrary data to be dropped on the server
-* (bug 47271) $wgContentHandlerUseDB should be set to false during the upgrade
-* (bug 46084) Sanitize $limitReport before outputting.
-* (bug 46859) Disable external entities in XMLReader.
-* (bug 47251) Disable external entities in Import.
-* (bug 42649) PHP Fatal error: Call to a member function isLocal() on a
- non-object in Title.php.
-* (bug 46493) Special:ProtectedPages results in whitepage when a bad title is protected.
-* (bug 40617) Installer can now customize the logo in LocalSettings.php.
-* (bug 40353) SpecialDoubleRedirect should support interwiki redirects.
-* (bug 40352) fixDoubleRedirects.php should support interwiki redirects.
-* (bug 9237) SpecialBrokenRedirect should not list interwiki redirects.
-* (bug 34960) Drop unused fields rc_moved_to_ns and rc_moved_to_title from
- recentchanges table.
-* (bug 32951) Do not register internal externals with absolute protocol,
- when server has relative protocol.
-* (bug 39005) When purging proxies listed in $wgSquidServers using HTTP PURGE
- method requests, we now send a Host header by default, for Varnish
- compatibility. This also works with Squid in reverse-proxy mode. If you wish
- to support Squid configured in forward-proxy mode, set
- $wgSquidPurgeUseHostHeader to false.
-* (bug 37020) sql.php with readline eats semicolon.
-* (bug 11748) Properly handle optionally-closed HTML tags when Tidy is
- disabled, and don't wrap HTML-syntax definition lists in paragraphs.
-* (bug 41409) Diffs while editing an old revision should again diff against the
- current revision.
-* (bug 41494) Honor $wgLogExceptionBacktrace when logging non-API exceptions
- caught during API execution.
-* (bug 37963) Fixed loading process for user options.
-* (bug 26995) Update filename field on Upload page after having sanitized it.
-* (bug 41793) Contribution links to users with 0 edits on Special:ListUsers
- didn't show up red.
-* (bug 41899) A PHP notice no longer occurs when using the "rvcontinue" API
- parameter.
-* (bug 42036) Account creation emails now contain canonical (not
- protocol-relative) URLs.
-* (bug 41990) Fix regression: API edit with redirect=true and lacking
- starttimestamp and basetimestamp should not cause an edit conflict.
-* (bug 41706) EditPage: Preloaded page should be converted if possible and
- needed.
-* (bug 41886) Rowspans are no longer exploded by tablesorter until the table is
- actually sorted.
-* (bug 2865) User interface HTML elements don't use lang attribute.
- (completed the fix by adding the lang attribute to firstHeading).
-* (bug 42173) Removed namespace prefixes on Special:UncategorizedCategories.
-* (bug 36053) Log in "returnto" feature forgets query parameters if no
- title parameter was specified.
-* (bug 42410) API action=edit now returns correct timestamp for the new edit.
-* (bug 14901) Email notification mistakes log action for new page creation.
- Enotif no longer sends "page has been created" notifications for some log
- actions. The following events now have a correct message: page creation,
- deletion, move, restore (undeletion), change (edit). Parameter
- $CHANGEDORCREATED is deprecated in 'enotif_body' and scheduled for removal in
- MediaWiki 1.23.
-* (bug 457) In the sidebar of Vector, CologneBlue, Monobook, and Monobook-based
- skins, the heading levels have been changed from (variously per skin)
- <h4>, <h5> or <h6> to only <h3>s, with a <h2> hidden heading above them.
- If you are styling or scripting the headings in a custom way, this change
- will require updates to your site's CSS or JS.
-* (bug 41342) jquery.suggestions should cancel any active (async) fetches
- before it triggers another fetch.
-* (bug 42184) $wgUploadSizeWarning missing second variable.
-* (bug 34581) removeUnusedAccounts.php maintenance script now ignores newuser
- log when determining whether an account is used.
-* (bug 43379) Gracefully fail if rev_len is unavailable for a revision on the
- History page.
-* (bug 42949) API no longer assumes all exceptions are MWException.
-* (bug 41733) Hide "New user message" (.usermessage) element from printable view.
-* (bug 39062) Special:Contributions will display changes that don't have
- a parent id instead of just an empty bullet item.
-* (bug 37209) "LinkCache doesn't currently know about this title" error fixed.
-* wfMerge() now works if $wgDiff3 contains spaces
-* (bug 43052) mediawiki.action.view.dblClickEdit.dblClickEdit should trigger
- ca-edit click instead opening URL directly.
-* (bug 43964) Invalid value of "link" parameter in <gallery> no longer produces
- a fatal error.
-* (bug 44775) The username field is not pre-filled when creating an account.
-* (bug 45069) wfParseUrl() no longer produces a PHP notice if passed a "mailto:"
- URL without address
-* (bug 45012) Creating an account by e-mail can no longer show a
- "password mismatch" error.
-* (bug 44599) On Special:Version, HEADs for submodule checkouts (e.g. for
- extensions) performed using Git 1.7.8+ should now appear.
-* (bug 42184) $wgUploadSizeWarning missing second variable
-* (bug 40326) Check if files exist with a different extension during uploading
-* (bug 34798) Updated CSS for Atom/RSS recent changes feeds to match on-wiki diffs.
-* (bug 42430) Calling numRows on MySQL no longer propagates unrelated errors.
-* (bug 44719) Removed mention of non-existing maintenance/migrateCurStubs.php
- script in includes/DefaultSettings.php
-* (bug 45143) jquery.badge: Treat non-Latin variants of zero as zero as well.
-* (bug 46151) mwdocgen.php should not ignore exit code of doxygen command.
-* (bug 41889) Fix $.tablesorter rowspan exploding for complex cases.
-* (bug 47489) Installer now automatically selects the next-best database type if
- the PHP mysql extension is not loaded, preventing fatal errors in some cases.
-* (bug 47202) wikibits: FF2Fixes.css should not be loaded in Firefox 20.
-
-=== API changes in 1.21 ===
-* BREAKING CHANGE: Chunked uploads are now disabled by default. You can re-enable
- them by setting $wgAllowChunkedUploads=true
-* BREAKING CHANGE: list=logevents output format changed for details of some log
- types. Specifically, details that were formerly reported under a key like
- "4::foo" will now be reported under a key of simply "foo".
-* BREAKING CHANGE: '??_badcontinue' error code was changed to '??badcontinue'
- for all query modules.
-* prop=revisions can now report the contentmodel and contentformat.
- See docs/contenthandler.txt.
-* action=edit and action=parse now support contentmodel and contentformat
- parameters to control the interpretation of page content.
- See docs/contenthandler.txt for details.
-* (bug 35693) ApiQueryImageInfo now suppresses errors when unserializing metadata.
-* (bug 40111) Disable minor edit for page/section creation by API.
-* (bug 41042) Revert change to action=parse&page=... behavior when the page
- does not exist.
-* (bug 27202) Add timestamp sort to list=allimages.
-* (bug 43137) Don't return the sha1 of revisions through the API if the content is
- revision-deleted.
-* ApiQueryImageInfo now also returns imageinfo for redirects.
-* list=alltransclusions added to enumerate every instance of page embedding
-* list=alllinks & alltransclusions now allow both 'from' and 'continue' in
- the same query. When both are present, 'from' is simply ignored.
-* list=alllinks & alltransclusions now allow 'unique' in generators, to yield
- a list of all link/template target pages instead of source pages.
-* ApiQueryBase adds 'badcontinue' error code if module has 'continue' parameter.
-* (bug 35885) Removed version parameter and all getVersion() methods.
-* action=options now takes a "resetkinds" option, which allows only resetting
- certain types of preferences when the "reset" option is set.
-* (bug 36751) ApiQueryImageInfo now returns imageinfo for the redirect target
- when queried with &redirects=.
-* (bug 31849) ApiQueryImageInfo no longer gets confused when asked for info on
- a redirect and its target.
-* (bug 43849) ApiQueryImageInfo no longer throws exceptions with ForeignDBRepo
- redirects.
-* On error, any warnings generated before that error will be shown in the result.
-* action=help supports generalized submodules (modules=query+value), querymodules obsolete
-* ApiQueryImageInfo continuation is more reliable. The only major change is
- that the imagerepository property will no longer be set on page objects not
- processed in the current query (i.e. non-images or those skipped due to
- iicontinue).
-* Add supports for all pageset capabilities - generators, redirects, converttitles to
- action=purge and action=setnotificationtimestamp.
-* (bug 43251) prop=pageprops&ppprop= now accepts multiple props to query.
-* ApiQueryImageInfo will now limit the number of calls to File::transform made
- in any one query. If there are too many, iicontinue will be returned.
-* action=query&meta=siteinfo&siprop=general will now return the regexes used for
- link trails and link prefixes. Added for Parsoid support.
-* Added an API query module list=pageswithprop, which lists pages using a
- particular page property.
-* Added an API query module list=pagepropnames, which lists all page prop names
- currently in use on the wiki.
-* (bug 44921) ApiMain::execute() will now return after the CORS check for an
- HTTP OPTIONS request.
-* (bug 44923) action=upload works correctly if the entire file is uploaded in
- the first chunk.
-* Added 'continue=' parameter to streamline client iteration over complex query results
-* (bug 44909) API parameters may now be marked as type "upload", which is now
- used for action=upload's 'file' and 'chunk' parameters. This type will raise
- an error during parameter validation if the parameter is given but not
- recognized as an uploaded file.
-* (bug 44244) prop=info may now return the number of people watching each page.
-* (bug 33304) list=allpages will no longer return duplicate entries when
- querying protection.
-* (bug 33304) list=allpages will now find really old indefinite protections.
-* (bug 45937) meta=allmessages will report a syntactically invalid lang as a
- proper error instead of as an uncaught exception.
-* (bug 48542) SpecialStatistics::getOtherStats() now uses the user language.
-
-=== API internal changes in 1.21 ===
-* BREAKING CHANGE: ApiPageSet constructor now has two params instead of three, with only the
- first one keeping its meaning. ApiPageSet is now derived from ApiBase.
-* BREAKING CHANGE: ApiQuery::newGenerator() and executeGeneratorModule() were deleted.
-* For debugging only, a new global $wgDebugAPI removes many API restrictions when true.
- Never use on the production servers, as this flag introduces security holes.
- Whenever enabled, a warning will also be added to all output.
-* ApiModuleManager now handles all submodules (actions,props,lists) and instantiation
-* Query stores prop/list/meta as submodules
-* ApiPageSet can now be used in any action to process titles/pageids/revids or any generator.
-* ApiQueryGeneratorBase::setGeneratorMode() now requires a pageset param.
-* $wgAPIGeneratorModules is now obsolete and will be ignored.
-* Added flags ApiResult::OVERRIDE and ADD_ON_TOP to setElement() and addValue()
-* Internal API calls will now include <warnings> in case of unused parameters
-
-=== Languages updated in 1.21 ===
-
-MediaWiki supports over 350 languages. Many localisations are updated
-regularly. Below only new and removed languages are listed, as well as
-changes to languages because of Bugzilla reports.
-
-* South Azerbaijani (azb) added.
-* (bug 30040) Autonym for nds-nl is now 'Nedersaksies' (was 'Nedersaksisch').
-* (bug 45436) Autonym for pi (Pali) is now 'पालि' (was ''पाळि').
-* (bug 34977) Now formatted numbers in Spanish use space as separator
- for thousands, as mandated by the Real Academia Española.
-* (bug 35031) Kurdish formatted numbers now use period and comma
- as separators for thousands and decimals respectively.
-
-=== Other changes in 1.21 ===
-* BREAKING CHANGE: (bug 44385) Removed the jquery.collapsibleTabs module and
- moved it to the Vector extension. It was entirely Vector-extension-specific,
- deeply interconnected with the extension, and this functionality really
- belongs to the extension instead of the skin anyway. In the unlikely case you
- were using it, you have to either copy it to your extension, or install the
- Vector extension (and possibly disable its features using config settings if
- you don't want them).
-* BREAKING CHANGE: Filenames of maintenance scripts were standardized into
- lowerCamelCase format, and made more explicit:
- - clear_stats.php -> clearCacheStats.php
- - clear_interwiki_cache.php -> clearInterwikiCache.php
- - initStats.php -> initSiteStats.php
- - proxy_check.php -> proxyCheck.php
- - stats.php -> showCacheStats.php
- - showStats.php -> showSiteStats.php.
- Class names were renamed accordingly:
- - clear_stats -> ClearCacheStats
- - InitStats -> InitSiteStats
- - CacheStats -> ShowCacheStats
- - ShowStats -> ShowSiteStats.
-* BREAKING CHANGE: (bug 38244) Removed the mediawiki.api.titleblacklist module
- and moved it to the TitleBlacklist extension.
-* Experimental IBM DB2 support was removed due to lack of interest and maintainership.
-
-== Compatibility ==
-
-MediaWiki 1.21 requires PHP 5.3.2 or later.
-
-MySQL is the recommended DBMS. PostgreSQL or SQLite can also be used, but
-support for them is somewhat less mature. There is experimental support for
-Oracle.
-
-The supported versions are:
-
-* MySQL 5.0.2 or later
-* PostgreSQL 8.3 or later
-* SQLite 3.3.7 or later
-* Oracle 9.0.1 or later
-
-== Upgrading ==
-
-1.21 has several database changes since 1.20, and will not work without schema
-updates. Note that due to changes to some very large tables like the revision
-table, the schema update may take quite long (minutes on a medium sized site,
-many hours on a large site).
-
-If upgrading from before 1.11, and you are using a wiki as a commons
-repository, make sure that it is updated as well. Otherwise, errors may arise
-due to database schema changes.
-
-If upgrading from before 1.7, you may want to run refreshLinks.php to ensure
-new database fields are filled with data.
-
-If you are upgrading from MediaWiki 1.4.x or earlier, you should upgrade to
-1.5 first. The upgrade script maintenance/upgrade1_5.php has been removed
-with MediaWiki 1.21.
-
-Don't forget to always back up your database before upgrading!
-
-See the file UPGRADE for more detailed upgrade instructions.
-
-For notes on 1.19.x and older releases, see HISTORY.
-
-== Online documentation ==
-
-Documentation for both end-users and site administrators is available on
-MediaWiki.org, and is covered under the GNU Free Documentation License (except
-for pages that explicitly state that their contents are in the public domain):
-
- https://www.mediawiki.org/wiki/Documentation
-
-== Mailing list ==
-
-A mailing list is available for MediaWiki user support and discussion:
-
- https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
-
-A low-traffic announcements-only list is also available:
-
- https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
-
-It's highly recommended that you sign up for one of these lists if you're
-going to run a public MediaWiki, so you can be notified of security fixes.
-
-== IRC help ==
-
-There's usually someone online in #mediawiki on irc.freenode.net.
diff --git a/RELEASE-NOTES-1.22 b/RELEASE-NOTES-1.22
new file mode 100644
index 00000000..dad24388
--- /dev/null
+++ b/RELEASE-NOTES-1.22
@@ -0,0 +1,610 @@
+Security reminder: MediaWiki does not require PHP's register_globals. If you
+have it on, turn it '''off''' if you can.
+
+== MediaWiki 1.22 ==
+
+THIS IS NOT A RELEASE YET
+
+MediaWiki 1.22 is an alpha-quality branch and is not recommended for use in
+production.
+
+* Breaking Changes in 1.22
+* New features in 1.22
+* Configuration changes in 1.22
+* Bug fixes in 1.22
+* API changes in 1.22
+* Languages updated in 1.22
+* Other changes in 1.22
+
+=== Breaking Changes in 1.22 ===
+* BREAKING CHANGE: (bug 41729) Display editsection links next to headings. Also
+ change their class name from .editsection to .mw-editsection and place them at
+ the end of the heading element instead of the beginning. Client-side code and
+ screen-scrapers will have to be adjusted to handle both cases (old HTML will
+ still be visible on cached page renders until they are purged); extensions
+ using the DoEditSectionLink or EditSectionLink hooks might need adjustments as
+ well.
+* (bug 55818) BREAKING CHANGE: Removed undocumented 'Debug' hook in wfDebug.
+ This resolves an infinite loop when using $wgDebugFunctionEntry = true.
+* BREAKING CHANGE: action=parse no longer returns all langlinks for the page
+ with prop=langlinks by default. The new effectivelanglinks parameter will
+ request that the LanguageLinks hook be called to determine the effective
+ language links.
+* BREAKING CHANGE: list=allpages, list=langbacklinks, and prop=langlinks do not
+ apply the new LanguageLinks hook, and thus only consider language links
+ stored in the database.
+* BREAKING CHANGE: Implementation of MediaWiki's JS and JSON value encoding
+ has changed:
+** MediaWiki no longer supports PHP installations in which the native JSON
+ extension is missing or disabled.
+** XmlJsCode objects can no longer be nested inside objects or arrays.
+ (For Xml::encodeJsCall(), this individually applies to each argument.)
+** The sets of characters escaped by default, along with the precise escape
+ sequences used, have changed (except for the Xml::escapeJsString()
+ function, which is now deprecated).
+* BREAKING CHANGE: The Services_JSON class has been removed. If necessary,
+ be sure to upgrade affected extensions at the same time (e.g. Collection).
+* BREAKING CHANGE: Legacy skins Simple, MySkin, Chick, Standard and Nostalgia
+ were all removed. (Nostalgia was moved to an extension.) The SkinLegacy and
+ LegacyTemplate classes that supported them were removed as well and are now a
+ part of the Nostalgia extension.
+* BREAKING CHANGE: The "ExternalAuth" authentication subsystem was removed, along
+ with its associated globals of $wgExternalAuthType, $wgExternalAuthConf,
+ $wgAutocreatePolicy and $wgAllowPrefChange. Affected users are encouraged to
+ use AuthPlugin for external authentication/authorization needs.
+* BREAKING CHANGE: mw.util.tooltipAccessKeyRegexp: The match group for the
+ accesskey character is now $6 instead of $5.
+* BREAKING CHANGE: meta keywords are no longer supported. A <meta name="keywords"
+ will no longer be output and OutputPage::addKeyword no longer exists.
+* BREAKING CHANGE: The EditSectionLink hook was removed after being
+ deprecated since MediaWiki 1.14. Use DoEditSectionLink instead.
+* (bug 50310) BREAKING CHANGE: wikibits: Drop support for mwCustomEditButtons.
+ It defaults to an empty array and emits mw.log.warn when accessed.
+* BREAKING CHANGE: Special:Disambiguations has been removed from MediaWiki core.
+ Functions related to disambiguation pages are now handled by the Disambiguator
+ extension (https://www.mediawiki.org/wiki/Extension:Disambiguator) (bug
+ 35981).
+* BREAKING CHANGE: The 'mediawiki.legacy.wikiprintable' module has been removed.
+ The skins/common/wikiprintable.css file no longer exists. Return value of
+ Skin#commonPrintStylesheet is ignored. Please use the 'mediawiki.legacy.commonPrint'
+ module instead or base your skin on SkinTemplate.
+* BREAKING CHANGE: The module 'mediawiki.legacy.IEFixes' has been removed as it was
+ unused. The file skins/common/IEFixes.js remains but is only used by wikibits.
+ The file never contained any re-usable components. To use it in a skin, load
+ 'mediawiki.legacy.wikibits' (which IEFixes depends on) and that will import
+ IEFixes automatically if user agent conditions are met.
+
+=== New features in 1.22 ===
+* You can now install extensions using Composer.
+ See https://www.mediawiki.org/wiki/Composer
+* (bug 44525) mediawiki.jqueryMsg can now parse (whitelisted) HTML elements and attributes.
+* (bug 33454) Language::sprintfDate now has a timezone parameter, and supports
+ the "eIOPTZ" formatting characters.
+* EditWarning: A warning is shown when an editor leaves the edit form without
+ saving (enabled by default, users can opt-out via the 'useeditwarning'
+ preference). This feature was moved from the Vector extension, and is now part
+ of core for all skins. Take care when upgrading that you don't use an older
+ version of the Vector extension as this feature may conflict.
+* New 'mediawiki.ui' CSS module providing mw-ui-* styles for buttons and a
+ compact vertical form layout.
+* HTMLForm supports a new display format 'vform' which applies this compact vertical
+ layout and button styling. Special:PasswordReset uses this format.
+* New versions of login (Special:UserLogin) and create account
+ (Special:UserLogin/signup) forms using the "vform" compact vertical form layout.
+ These forms use new messages that assume a "Help logging in" link, see
+ https://www.mediawiki.org/wiki/Manual:Page_customizations;
+ https://www.mediawiki.org/wiki/Account_creation_user_experience/Strings lists the
+ message key changes.
+* (bug 23343) Implemented ability to apply IP blocks to the contents of X-Forwarded-For headers
+ by adding a new configuration variable $wgApplyIpBlocksToXff (disabled by default).
+* The new hook 'APIGetPossibleErrors' to modify the list of possible errors was
+ added.
+* (bug 25592) LogEventsList::showLogExtract() will now ignore various
+ Pager-related WebRequest parameters by default, as this is overwhelmingly
+ likely to be what was intended by users of the method. If any caller wishes
+ to use these parameters, the new param 'useRequestParams' may be set to true.
+* mw.util.addPortletLink: Tooltip is no longer required to be plain (without
+ an accesskey in it already). As such it now rountrips. Creating a link with a
+ message as tooltip, grabbing the title attribute and using it to create
+ another portlet will work as expected.
+* (bug 6747) {{ROOTPAGENAME}} introduced, contains the name of the topmost
+ page without namespace.
+* (bug 45535) introduced the new 'LanguageLinks' hook for manipulating the
+ language links associated with a page before display.
+* Chosen (http://harvesthq.github.io/chosen/) was added as module 'jquery.chosen'
+* HTMLForm will turn multiselect checkboxes into a Chosen interface when setting cssclass 'mw-chosen'
+* rebuildLocalisationCache learned --lang option. Let you rebuild l10n caches
+ of the specified languages instead of all of them.
+* New GetNewMessagesAlert hook allowing extensions to disable or modify the new
+ messages alert
+* New wgUserNewMsgRevisionId JS global for logged in users. This will be null
+ if the user has no new talk page messages. Otherwise it will be set to the
+ revision ID of the oldest new talk page message. This will allow gadgets and
+ extensions to create their own new message alerts on the client side.
+* mediawiki.log: Added log.warn wrapper (uses console.warn and console.trace).
+* mediawiki.log: Implemented log.deprecate. This method defines a property and
+ uses ES5 getter/setter to emit a warning when they are used.
+* $wgCascadingRestrictionLevels was added, allowing one to specify restriction levels
+ which can be cascading (previously 'sysop' was hard-coded as the only one).
+* XHTML5 support has been improved. If you set $wgMimeType = 'application/xhtml+xml'
+ MediaWiki will try outputting markup acording to XHTML5 rules.
+* Altered hook 'ProtectionForm::save', adding the reason page protection is
+ changed as third parameter.
+* New hook 'TitleSquidURLs' for manipulating the list of URLs to be purged from
+ HTTP caches when a page is changed.
+* Changed the patrolling system to always show the link for patrolling in case the
+ current revision is patrollable. This also removed the usage of the rcid URI parameters.
+* Oracle DB backend now supports Database Resident Connection Pooling (DRCP).
+ Can be enabled by setting $wgDBOracleDRCP=true.
+ Requires Oracle DB 11gR1 or above, enabled DRCP inside the DB itself and a
+ propper connect string.
+ More about DRCP can be found at:
+ http://www.oracle-base.com/articles/11g/database-resident-connection-pool-11gr1.php
+* Add a new parameter $patrolFooterShown to hook ArticleViewFooter so the hook
+ handlers can take further action based on the status of the patrol footer
+* A new hook TitleQuickPermissions was added to allow overriding of quick
+ permissions in the Title class.
+* LinkCache singleton can now be altered or cleared, letting one to specify
+ another instance that does not rely on a database backend.
+* MediaWiki's PHPUnit tests can now use PHPUnit installed using composer --dev.
+* (bug 43689) The lists of templates used on the page and hidden categories it
+ is a member of, shown below the edit form, are now collapsible (and collapsed
+ by default).
+* Parser profiling data, formerly only available in the "NewPP limit report"
+ HTML comment, is now also displayed at the bottom of page previews.
+* Added ParserLimitReportPrepare and ParserLimitReportFormat hooks, deprecated
+ ParserLimitReport hook.
+* New user rights have been added to increase granularity in rights management
+ for extensions such as OAuth:
+** editmyusercss controls whether a user may edit their own CSS subpages.
+** editmyuserjs controls whether a user may edit their own JS subpages.
+** viewmywatchlist controls whether a user may view their watchlist.
+** editmywatchlist controls whether a user may edit their watchlist.
+** viewmyprivateinfo controls whether a user may access their private
+ information (e.g. registered email address, real name).
+** editmyprivateinfo controls whether a user may change their private
+ information.
+** editmyoptions controls whether a user may change their preferences.
+* Add new hook AbortTalkPageEmailNotification, this will be used to determine
+ whether to send the regular talk page email notification
+* Action classes registered in $wgActions are now also supported in the form of
+ a callback (which returns an instance of Action) instead of providing the name
+ of a subclass of Action.
+* (bug 46513) Vector: Add the collapsibleTabs script from the Vector extension.
+* Added $wgRecentChangesFlags for defining new flags for RecentChanges and
+ watchlists.
+* (bug 40518) mw.toolbar: Implemented mw.toolbar.addButtons for adding multiple
+ button objects in one call.
+* Rights used for the default protection levels ('sysop' and 'autoconfirmed')
+ are now used just for that purpose, instead of overloading other rights. This
+ allows easy granting of the ability to edit sysop-protected pages without
+ also granting the ability to protect and unprotect.
+* (bug 48256) Make brackets in section edit links accessible to CSS.
+ They are now wrapped in <span class="mw-editsection-bracket" />.
+* (bug 8480) Allow handler specific parameters in galleries (like page number)
+* jquery.client: Add detection for Opera 15 and Interne