MediaWiki 1.27/wmf.6/Changelog

Core changes

 * - resourceloader: Log if MessageBlobStore failed to fetch a message
 * - Avoid doNotifyQueueEmpty race conditions for Redis
 * - Implement mw.requestIdleCallback for deferred background tasks
 * - SpecialAllMessages: Use cached getHtmlCode instead of wfBCP47
 * - Move Math specific CSS from core to extension
 * - Mention main WAN and stash instances in cache debug statement
 * - Improve LoadBalancer::doWait performance via APC
 * - objectcache: Reduce MediaWiki-specificness from Memcached classes
 * - Sync up with Parsoid parserTests.
 * - Removed useless field in SqlBagOStuff
 * - Upgrade JobRunner "COMMIT ENQUEUED" log entries to WARNING
 * - languages: Avoid getPreferredVariant in ucfirst/lcfirst unless needed
 * - MessageCache: Remove redundant Language::ucfirst optimisation
 * - BacklinkCache: Remove use of ProcessCacheLRU
 * - LinkCache: Convert from MapCacheLRU to HashBagOStuff.
 * - LinkCache: Minor clean up of documentation and variable names
 * - Convert LCStoreDB to using startAtomic/endAtomic
 * - Revert "Disable Preferences save button before setting change"
 * - resourceloader: Remove use of msg_resource_links table
 * - Don't apply CSS columns if less than 3 results were found on AllPages & PrefixIndex
 * - Use HTMLForm in Special:AllPages
 * - Replace Language::factory( $wgLanguageCode ) by $wgContLang
 * - Fix regression in I24d9b16
 * - Work around broken HHVM ini_get for 'upload_max_filesize' and 'post_max_size'
 * - Rework the Preferences to prevent FOUC
 * - Pass wpExistingTags in the request when multiple revisions are selected
 * - Add/update phpdoc
 * - Remove various unused variables
 * - Add class member definition for params
 * - Fix casing of function calls in API
 * - ApiHelp: Fix undefined variable warning
 * - Use Arabic numerals in Punjabi (pa) locale
 * - TOC: Fix problems on RTL wikis
 * - Break long lines and cleanup some RefreshLinksJob checks
 * - Enforce stricter slave lag limits for bot API requests
 * - Always defer the log publish in recordUpload2
 * - Make Swift iterators throw errors on failure
 * - Bump composer-merge-plugin to v1.3.0
 * - Add header to flag API POST requests with no write intentions
 * - Hotlink InstantCommons images by default to speed up parsing
 * - Log errors in thumb.php
 * - mediawiki.jqueryMsg: Update tests to mock magic.SITENAME
 * - Make edit link conditional on Special:BrokenRedirects/DoubleRedirects
 * - Remove 'bot' check before trying the edit stash
 * - LocalisationCache: try harder to use LCStoreCDB
 * - Improve mismatched atomic section errors
 * - Allow AUTHOR|CREDITS with .{media,}wiki extension
 * - Title: Add warning if newFromText is given non-string/non-null value
 * - Convert JobQueueGroup::getCachedConfigVar to using WAN cache
 * - mw.ForeignStructuredUpload: Link author's username to their user page
 * - mw.ForeignStructuredUpload: Prevent categories and descriptions from being duplicated
 * - Convert recordUpload2 to using startAtomic/endAtomic
 * - mw.ForeignStructuredUpload: Add some headers to file description page
 * - mediawiki.jqueryMsg: Don't duplicate link contents if parse is called multiple times
 * - Add triggeringRevisionId to LinksUpdate JobSpec
 * - Fix name of PoolCounter callback in thumb.php
 * - Add example of help for all query submodules
 * - Removed raw HTML from tags-create-explanation message in SpecialTags.php
 * - Use interwiki cache directly to resolve transwiki import sources
 * - FindOrphanedFiles cleanups
 * - API: Forwards-compatibility for ApiTokens
 * - Implement section support for OOUIHTMLForm
 * - MonologSpi: add support for customizing Monolog\Logger instances
 * - ApiQueryInfo.php: Add code and direction of the page content language
 * - Remove deprecated SiteObject and SiteArray classes
 * - hooks.txt: don't use deprecated hooks in examples
 * - Remove WikiPage::doQuickEdit
 * - Convert ChangesList from MapCacheLRU to HashBagOStuff
 * - objectcache: Make HashBagOStuff LRU instead of least-recently-set
 * - resourceloader: Use WAN cache for validateScriptFile cache
 * - Add updateRevisionOn sanity check for existing pages too
 * - HTMLFormField: Do not double-escape label in OOUI mode
 * - Avoid use of rollback in WikiPage::doEditContent
 * - Add Timing interface
 * - mw.widgets.ComplexTitleInputWidget: Add infusion helpers
 * - Update OOjs UI to v0.13.1
 * - Make DeferredUpdates exception handling more robust
 * - Add WebResponse::clearCookie
 * - API: Log all deprecated parameter uses to api-feature-usage.log
 * - Change Special:ChangePassword to use OOUI
 * - Allow passing detailed permission errors data to API
 * - phpcs: Fix some "Single space expected before elseif"
 * - Don't link to title on "htmlform-title-not-exists"

Vendor

 * - Bump composer-merge-plugin to v1.3.0

CentralAuth

 * - Added Rakefile
 * - Re-add global password policies

CirrusSearch

 * - Regression: wgCirrusSearchQueryStringMaxDeterminizedStates is ignored
 * - Report ES doc id in RunSearch rather than the title page id
 * - Fixed RuboCop failures in Rakefile
 * - Added Rakefile
 * - Don't run maintenance scripts for Elasticsearch 2.x
 * - Fix options option - it should accept an argument

ConfirmEdit

 * - Copy context request changes to wgRequest global
 * - ReCaptchaNoCaptcha: Fix function call on a non-object

ContentTranslation

 * - Added Rakefile
 * - Fixed a bug that prevented suggestions from showing
 * - Update mediawiki_selenium Ruby gem to version 1.6
 * - Suggestions: Visually group the non-personal suggestions

DonationInterface

 * - Amazon: check CSRF token, preserve data after expiry
 * - Make Amazon use standard handleDonationRequest
 * - Add IDs to more inputs, remove duplicate
 * - Add sanitize wrapper fn to WmfFramework

Echo

 * - Added Rakefile
 * - Recurse into sub folders for jshint and jscs
 * - Implement SortedList in Echo notifications
 * - Allow notification model and widget to show combined notifications
 * - Initialize notifications model outside of the widget
 * - Make 'x' button in notifications bigger
 * - Add an APIHandler to Echo notifications
 * - Output body in flyout
 * - Don't mark read notifications as unseen
 * - Prep for mobile rewrite in Echo
 * - Add a presentation model for Echo "Welcome" notification

EducationProgram

 * - Remove old logging

EventLogging

 * - Update grunt-jsonlint to 1.0.5
 * - Add Schema class
 * - Remove unused dependency on 'mediawiki.util'
 * - Update documentation to JSDuck format and add jsduck test

Flow

 * - Added Rakefile
 * - Fix JS exception on dedicated (no-JS) edit post page.
 * - getTopicList: Specify vtlsortby to avoid falling back on default
 * - Add isset to handle when ref_id is not in row returned from MC index
 * - Follow-up 715e950bd33: also activate EditPostWidget in nojs form code path
 * - Add browser tests for adding/removing categories
 * - Historical UID: Change counter to start at any possible value
 * - Fix undo form for OO UI selection changes
 * - Fix regression in edit post and edit topic summary due to OO UI changes
 * - Browser tests fixes
 * - Use flow- prefix for the CSS classes
 * - Add Estonian translation for flow topic namespace
 * - Add artificial primary key to flow_wiki_ref and flow_ext_ref

Gadgets

 * - Update README
 * - Add Estonian translations for gadget namespaces
 * - Remove non-existent gadgets from Special:GadgetUsage

GettingStarted

 * - Added Rakefile

Math

 * - Added Rakefile
 * - VE: Register sequence with CommandHelp
 * - Move Math specific CSS from core to extension

MobileApp

 * - Update edit pencil with Material style, for Android only.

MobileFrontend

 * - Added Rakefile
 * - Don't prevent clicks on links in section headings
 * - Add search generator config variable
 * - Fix collapsible header arrows
 * - Remove some unused i18n files
 * - Make page issues link take up an entire line
 * - Remove view source link from beta

MultimediaViewer

 * - Added Rakefile

OAuth

 * - Convert logging to PSR3 standard

PageTriage

 * - Added Rakefile

PdfHandler

 * - Added Rakefile

PoolCounter

 * - Added Rakefile

SemanticForms

 * - Small cleanup to JavaScript code for dependent fields
 * - Stop duplicating header of empty section as contents of ultimate section
 * - Renamed SFUtils::addJavascriptAndCSS to addFormRLModules
 * - Removed some usage of globals like $wgOut, $wgRequest
 * - Removed/replaced some unnecessary calls to SFUtils::addJavascriptAndCSS
 * - Fix if template uses neither SMW nor Cargo
 * - Typo and formatting fixes
 * - Use str_replace instead of preg_replace with fixed strings
 * - SF_UploadWindow: Fixed hook parameter
 * - Renamed ext.dynatree.js to SF_dynatree.js - better filename
 * - Fixed "tree" input to work in multiple-instance templates

SyntaxHighlight_GeSHi

 * - VE: Register sequence with CommandHelp

TimedMediaHandler

 * - Add php code sniffer
 * - Recurse sub folders in jshint an jscs
 * - Update packages
 * - Update TestVideoTranscode.php test
 * - Remove !defined( 'MEDIAWIKI' ) from 1 file
 * - Remove !defined( 'MEDIAWIKI' ) from two files

Translate

 * - Added Rakefile
 * - Fixed Lint/UselessAssignment RuboCop offense
 * - Fixed Style/WordArray RuboCop offense
 * - Fixed Style/StringLiterals RuboCop offense
 * - Fixed Style/SpaceInsideHashLiteralBraces RuboCop offense
 * - Fixed Style/RedundantSelf RuboCop offense
 * - Fixed Style/PercentLiteralDelimiters RuboCop offense
 * - Fixed Style/Not RuboCop offense
 * - Fixed Style/Tab RuboCop offense
 * - Fixed Style/HashSyntax RuboCop offense
 * - Fixed Style/EmptyLineBetweenDefs RuboCop offence
 * - Fixed Lint/UnusedBlockArgument RuboCop offense
 * - Updated RuboCop to the latest version
 * - Update mediawiki_selenium Ruby gem to version 1.6
 * - Add php code sniffer
 * - Fix npm errors
 * - Try to avoid huge inserts in DatabaseMessageIndex

UniversalLanguageSelector

 * - Added Rakefile

UploadWizard

 * - Added Rakefile
 * - UploadWizard.config.php: Get more correct file size limits
 * - Add explicit dependency on es5-shim
 * - mw.UploadWizardDetails: Upload TitleBlacklist error handling for T115258
 * - mw.UploadWizardDetails: Remove unused method #error
 * - mw.UploadWizardUploadInterface: Remove some dead code
 * - Remove grey horizontal line above the bottom buttons
 * - Change label of preferences tab from "Uploads" to "Uploading"
 * - Make mw.DestinationChecker more reusable
 * - Use String#trim rather than $.trim everywhere
 * - Remove a ton of unused CSS (around 80 lines)
 * - Remove single-use utility jQuery plugin $.fn.readonly
 * - Stop pretending to support MW 1.25 and older

VisualEditor

 * - Fix updating of display title upon save
 * - Added Rakefile
 * - Update VE core submodule to master (6f8f3db)
 * - Restructure education popup code to work without overriding onSelect
 * - ve.init.mw.DesktopArticleTarget.init: Make switching to VE for new pages work
 * - Unset 'action' query parameter from veEditUri, which should always point to VE
 * - Only load switching module (depending on OOUI etc.) on edit pages
 * - WikiEditor integration: Fix dependencies for switch button
 * - Drop any beforeunload handlers when loading from existing wikitext
 * - WikiEditor integration: Only add VE switch button if VE is available
 * - Update CommandHelpRegistry calls for breaking change in core
 * - ve.init.mw.Target: Update TitleBlacklist error code
 * - ApiVisualEditor: Return the correct notice when user is not allowed to create page
 * - CommandHelpDialog: Move registrations to where sequences are defined
 * - MWCommandHelpDialog: update for core changes
 * - Don't allow keeping changes when switching from wikitext *section* editing
 * - Apply same hide/show logic to both education popup dots
 * - Unbreak 404 handling code
 * - Source icon: Use double brakcets
 * - Target init: Add edit mode switch icons to VE and WE toolbars
 * - Set wgAction when messing with the action URL parameter
 * - Fix check for loading from modified action=edit
 * - Use mw.loader.using instead of weird hacks to load OOjs UI on action=edit
 * - AceEditorWidget: Add method to clear undo stack
 * - VESwitchConfirmDialog: Set pending on the correct button
 * - VESwitchConfirmDialog: Use modes to hide 'keep' button

WikiLove

 * - Added Rakefile

WikimediaEvents

 * - Log backend response time on edit requests

WikimediaMaintenance

 * - Trim dblist entries
 * - Improve LB handling

Vector

 * - Rework Vector style of Preferences to prevent FOUC
 * - Update packages
 * - Update codesniffer version