MediaWiki 1.25/wmf21/Changelog

Core changes

 * - Revert &quot;Made JobQueueFederated no longer need &quot;checkDelay&quot; for delaying&quot;
 * - mw.loader: Replace log calls with mw.track events
 * - jsduck: Add 'mediawiki.startUp.js' to eg-iframe
 * - jsduck: Refactor example iframe to catch uncaught errors
 * - Allow edit summaries to be up to 767 bytes long
 * - API: Remove explicit profiling
 * - Made JobQueueFederated no longer need &quot;checkDelay&quot; for delaying
 * - Minor doc fixes
 * - Add StatsD metric logging
 * - Introduce the Restbase Virtual REST Service class
 * - mediawiki.jqueryMsg: Fix examples in comments
 * - Rename JSDuck config to standard 'jsduck'
 * - Make PHP unit parser tests pass again after translation update
 * - FeedItem: Use full URL with protocol for &lt;id&gt;/&lt;guid&gt; in Atom/RSS feeds
 * - Added clarifying comments to IContextSource
 * - Don't require JavaScript for addHelpLink styles
 * - Push enqueue-on-view jobs to the faster &quot;local&quot; queue
 * - Remove isVolatile/markVolatile logic from LocalFile
 * - Update the Chinese conversion table for Chinese WikiProjects
 * - Set up RuboCop configuration according to coding conventions
 * - QA: Refactor for mediawiki_selenium 1.0
 * - Made wfFindFile/wfLocalFile callers use explicit &quot;latest&quot; flags
 * - resourceloader: Call setName in test suite before calling getStyles
 * - Specify max compatible kss version
 * - mw.Feedback: Terms of use always appended and allows for link
 * - mediawiki.test: Prevent &quot;Error: expected&quot; from going to the real console
 * - Remove rel=&quot;archives&quot; from HTML output
 * - Unbreak parser tests
 * - Fixed detection of unsigned mysql column in updater
 * - Remove duplicate param escaping code
 * - ParsoidVirtualRESTService: Don't use &quot;else if&quot;
 * - Browser should clear cache for API responses
 * - mw.ui: button: Update focus state
 * - Made the &quot;bypassCache&quot; flag for file locator methods use the master DB
 * - Fix three more invalid double underscore special page aliases
 * - Update OOjs UI to v0.9.0
 * - Profile wfShellExec calls by caller
 * - Added EnqueueJob class that handles routing jobs to queues
 * - Add &quot;ValidSkinNames&quot; to extension.schema.json and ExtensionProcessor
 * - If no secret key is available, don't try to use cache
 * - mediawiki.special.upload: One event handling function is enough
 * - maintenance: Defer initilization of 'main' Config until after Setup.php runs

Vendor

 * - Add liuggio/statsd-php-client
 * - composer.json: Remove metadata fields so it can't be published as a package

ApiSandbox

 * - Add extension.json

CentralAuth

 * - Add some debug output to populateListOfUsersToRename.php
 * - Update CentralAuthUser::chooseHomeWiki per Keegan

CharInsert

 * - Add extension.json

CirrusSearch

 * - Use the title.plain field for wildcard intitle: search

CommonsMetadata

 * - Move tests to CommonsMetadata namespace to avoid conflicts

ConfirmEdit

 * - Add RateLimit check for false CAPTCHAs

ContentTranslation

 * - Campaign: Add missing jquery.throttle-debounce RL module dependency
 * - References: Also support data-mw.body.html method
 * - Database: Set targetURL only when status is published
 * - Use string '1' to enable the beta feature
 * - Correct the way section headers are added
 * - References: Update the implementation to match new Parsoid output
 * - Save the selected language to ULS's previous languages
 * - Refactor setSourceLanguage and setTargetLanguage
 * - Remove mediawiki.Uri from being a dependency of the util module
 * - Support common configuration for all language pairs
 * - Souce selector: Let checkForTitle resolve false when title is empty
 * - Typos: confirmation, translation
 * - Source selector: Show common languages in the language selector
 * - Keep table sections aligned when content changed
 * - Campaign: Add mediawiki.util dependency
 * - Red interlanguage entrypoint: Remove the condition to load jquery.uls.data
 * - Show red interlanguage link in browser language and accept-language
 * - Refactor the unique function
 * - Run phplint and phpcs through &quot;composer test&quot; entry point
 * - Adapt the redlink module to the new registry

Echo

 * - Don't log missing user-locators
 * - QA: insert one-second sleep for Chrome workaround

EducationProgram

 * - Add EducationPage::getStats
 * - Show summary instead of $7 when viewing an old EPRevision

Flow

 * - Add some debugging info for NoIndexException with topic_root_id
 * - QA: update ruby gems
 * - Ensure squid cache is purged after successfull submissions
 * - Hygiene: Split the giant show function in Flow\View
 * - Validate input as hex string
 * - FlowAddMissingModerationLogs: These params are not optional
 * - Remove dead code
 * - Store parsoid content exactly as recieved
 * - Hygiene: some minor cleanups in Importer.php
 * - Notify the user that thanks are public
 * - Add support for separate title and main text for links
 * - Split out a minimal resource set for initializing flow
 * - Use url_generator to generate log links
 * - Batchload logging data
 * - Use new Flow format (topic title on board name) for log entries
 * - Logger should log post id, not revision id
 * - Fix intermittent off by one issues
 * - Flow: Flow-preview-warning message is too technical
 * - Eliminate plaintextSnippet
 * - Add Previous and next links to diff pages
 * - Changed edited post notification to fit new UI requirements

GlobalUsage

 * - Fix deleted page handling in update script

GuidedTour

 * - jsduck: Set --warnings-exit-nonzero

MapSources

 * - Update wiwosm url from toolserver =&gt; labs
 * - Fix php notice due to special page case mismatch

MassMessage

 * - Add &quot;composer test&quot; command to run phplint and phpcs

MobileFrontend

 * - Hygiene: appendToElement standardisation
 * - Hygiene: Use more sensible defaults for content overlay
 * - QA: recent versions of Chrome don't wait for event listeners
 * - Tweak to EditorApi to support editing of pages that do not exist
 * - Remove all images and recent uploads from UserProfile
 * - Revert &quot;Hygiene: Don't commit Gemfile.lock&quot;
 * - Break word added to main heading
 * - Hygiene: Don't commit Gemfile.lock
 * - QA: add a sleep to make Chrome happy. I don't like it.
 * - QA: update ruby gems
 * - Add composer test entry point for phplint and phpcs
 * - Correctly align user icon on Special:Contributions
 * - Beta: Don't close ReferencesDrawer on scroll
 * - Make WikiBase ID easily retrievable
 * - Tweak banner image aspect ratio
 * - Add the MobileViewBannerImageRepository
 * - Correct the arrow position of the editor tutorial
 * - Avoid array_merge during initialization
 * - Hygiene: Revision::getRawUserText was depreacted
 * - Update jscs version
 * - Hygiene: ImageOverlay should use View##events
 * - Four minute abs
 * - Alpha: Allow browsing of images in a page on mobile.
 * - Add ButtonWithSpinner and re-create 'Report an error' button using it

MultimediaViewer

 * - QA: update ruby gems
 * - Update JSDuck config to standard jsduck.json

OAuth

 * - Fix mwoauthserver-bad-consumer-key message

OpenStackManager

 * - Revert &quot;Set keystone tokens to last 30 days.&quot;
 * - Fix MySQL syntax in token size change patch file
 * - byte Keystone tokens

Popups

 * - renderer.article: Remove leading spaces before brackets
 * - renderer.article: Bold the title no matter what the trailing characters

SemanticForms

 * - Added default setting of &quot;possible values&quot; for Cargo fields

TemplateData

 * - TDG: Support optional text of 'deprecated' property
 * - Don't flicker &quot;Manage TemplateData&quot; button's disabledness state
 * - Document code with JSDuck
 * - Add composer entry point for phpcs and linting

Thanks

 * - Flow container needs to be reset before each test
 * - Notify the user that their thanks are public

TimedMediaHandler

 * - ogv.js media player for desktop Safari/IE (1 of 2)
 * - User-friendly prompt to install WebM components for Internet Explorer
 * - Improve transcode job insertion deduping
 * - Profile command line scripts the new way

Translate

 * - Wrap slow query in PoolCounterWorkViaCallback

UniversalLanguageSelector

 * - Don't force #p-lang to show using jQuery.fn.show

UploadWizard

 * - Move parts of detailsSubmit to details step
 * - QA: update ruby gems
 * - Move updateFileCounts to the step controllers

VisualEditor

 * - [BrowserTest] Update locator for the Insert/More link changed
 * - Update VE core submodule to master (4d7fda1)
 * - [BrowserTest] diff view altered slightly.
 * - [BrowserTest] fix edit test
 * - Use the RESTBase back-end if available
 * - Update VE core submodule to master (ad44a9b)
 * - Use new SkinEditSectionLinks hook instead of DoEditSectionLink
 * - Remove unused iconModuleStyles property
 * - Focus the surface after VE is already active
 * - ve.init.mw.ViewPageTarget: Recalculate toolbar sizes when adding &quot;Save&quot; button
 * - Update VE core submodule to master (e85ed49)
 * - Remove use of ve.indexOf and ve.getObjectKeys
 * - Do not call Toolbar#initialize twice during editor setup
 * - mw.ViewPageTarget: Cache '#mw-imagepage-content' query
 * - mw.ViewPageTarget: Hide ve-ce-surface during deactivation
 * - MWParameterPage: Show the field's example if it exists
 * - Use a detached icon in transclusion node
 * - Follow-up I11b9f0ab: Only make icon on transclusions that require it
 * - Update VE core submodule to master (d449684)
 * - Remove useless ve-ce-mw*Node classes from GCN subclasses
 * - i18n: Change grammar of suppress redirect update message
 * - build: Enforce disallowMixedSpacesAndTabs jscs rule
 * - build: Update jscs to latest
 * - Add composer entry point for phpcs and linting
 * - ve.ui.MWLinkTargetInputWidget: Fix documentation
 * - ve.init.mw.ViewPageTarget: Use mw.Api#postWithToken for setting hidebetawelcome pref
 * - ve.init.mw.Target: Don't go into infinite recursion on API errors
 * - Update VE core submodule to master (300b89a)
 * - Follow-up I11b9f0ab: Make the MWTransclusionNode icon a fixed size
 * - Follow-up I5918367: Add new classes to jsduck.json
 * - Update VE core submodule to master (9fb4bdb)
 * - Update JSDuck config to standard jsduck.json
 * - [BrowserTest] Update Ruby gems
 * - Add an icon to hidden templates

WikiEditor

 * - Schema:Edit instrumentation
 * - Convert .css to .less

WikiGrok

 * - Use latest version of MobileWebWikiGrokError schema
 * - Retrieve WikiBase ID using M.util

WikimediaEvents

 * - Next iteration of HTTPS support test

WikimediaMessages

 * - Add terms of use message to feedback form