MediaWiki 1.25/wmf24/Changelog

Core changes

 * - Bump VisualEditor for I2149c7a710
 * - ApiParse: Replace isCurrent check with getLatest comparison
 * - AdHocDebug: Get stack traces for failures in Article::fetchContentObject
 * - Report correct rev_id in missing-revision message
 * - Update CentralAuth to 1.25wmf24 HEAD
 * - Update Wikidata - fix issue with diff view
 * - Bump Flow to deploy conversions from LQT notifications to Echo
 * - Bump flow submodule in 1.25wmf24
 * - Update Wikidata - fix dumpRdf script
 * - Update VisualEditor for I1bb3053
 * - Fix ApiQuerySiteInfo with siprop=rightsinfo to not warn if your wgRightsPage is null
 * - Fix param order of a Title::newFromText call in MediaWiki
 * - Allow setting anonnotice to "" to prevent fallback to sitenotice
 * - Add debug logging for I2b36b7a3
 * - Add pluggable talk page poster and use it for mediawiki.feedback
 * - Update PageImages for cherry-picks
 * - Track request method in dbperformance.log
 * - Update Wikidata - property suggester, value view and fix bug in client
 * - Update EducationProgram
 * - Backport UploadWizard bugfix
 * - Add checks to try to catch T92046
 * - Update ContentTranslation to cherry pick 225d011
 * - Have back-compat shim actually return the value
 * - Update ConfirmEdit for Id4798364d
 * - Bump Flow and ConfirmEdit in 1.25wmf24
 * - Update Gather for I24cb928c1c77
 * - Bump VE submodule in 1.25wmf24
 * - Bump flow submodule in 1.25wmf24
 * - Backport ProfilerOutputStats
 * - Update Content Translation to efd7bfb
 * - Update OpenStackManager for I0a477108
 * - Update OpenStackManager for I6e93995c
 * - Bump flow submodule in 1.25wmf24
 * - Add Gather extension
 * - Submodule commit for "Dont reset default puppet config..."
 * - Checkout extensions/Wikidata to wmf/1.25wmf24
 * - Resources.php: Remove duplicate copy of 'oojs-ui.styles' module
 * - OutputPage: Tiny tweak to jQuery.ready inline script
 * - SECURITY: Don't allow entities in XMP with HHVM
 * - SECURITY: Don't allow directly calling Xml::isWellFormed
 * - SECURITY: Always expand xml entities when checking SVG's
 * - SECURITY: Escape > in Html::expandAttributes
 * - SECURITY: Don't execute another user's CSS or JS on preview
 * - SECURITY: Set maximal password length for DoS
 * - SECURITY: Fix animate blacklist
 * - SECURITY: Don't allow embedded application/xml in SVG's
 * - SECURITY: Make SVG @import checking case insensitive
 * - API: Reduce volume of "continue format is changing" warning
 * - New hook: OpportunisticLinksUpdate
 * - installer: Reduce some code duplication in LocalSettingsGenerator
 * - Special:LinkSearch: display links to pages in content language
 * - Made InfoAction::invalidateCache use READ_LATEST
 * - Added slave/master fallback logic in Revision
 * - mw.track: Add test suite
 * - resourceloader: Simplify getHashMtime to merely a timestamp
 * - Fix capitaliation of UtfNormal namespace
 * - resourceloader: De-duplicate $files in ResourceLoaderFileModule::getModifiedTime
 * - profiler: Consolidate duplicate branches in ProfilerOutputText
 * - Made text profiling actually work with load.php
 * - Rely less on file stat cache in FileDependency
 * - resourceloader: Cut down on file stat time in safeFilemtime
 * - exception: Log fatal errors to a new 'fatal' log group
 * - Fixed on new revisions
 * - registration: Have wfLoadExtension (and similar) use the queue
 * - registration: Use array_merge rather than array plus when merging
 * - Adding mobile target to mediawiki.template.mustache
 * - Add SpecialLog::getLogTypesOnUser
 * - Add null check in WikiImporter
 * - EditPage: Remove remnants of pre-1.16 live preview
 * - Category view modified to use column width
 * - Removed unused parameter from User::checkNewtalk
 * - Made User::getFormerGroups load properly
 * - ResourceLoaderImage: Some cleanup, typo fixes and tweaks
 * - ResourceLoaderImage: Throw exception if files don't exist
 * - resourceloader: Throw InvalidArgumentException for invalid constructor arguments
 * - ResourceLoaderImage: Add basic tests
 * - Made User::validateCache account for mQuickTouched
 * - Update namespaces for Luri (lrc) from translatewiki.net
 * - Add list-style-type:persian for bgn, lrc, mzn and sdh
 * - Parser tests for page status indicators
 * - Fix ORDER BY in fixUserRegistration.php
 * - ResourceLoaderImageModule: Rename 'image' in descriptors to 'file'
 * - ResourceLoaderImageModule: Remove 'type' stuff
 * - ResourceLoaderImageModule: Implement CSS selector templates
 * - ResourceLoaderImageModule: Add basic tests
 * - ResourceLoaderImageModule: Improve PHP 5.3 compatibility
 * - Use HTMLForm for Special:FileDuplicateSearch
 * - mediawiki.action.edit.preview: Disable if there is no #wpTextbox1
 * - Simplify TitleTest::testWgWhitelistReadRegexp
 * - Remove unused 'section-symbol' message
 * - build: Update grunt-banana-checker to v0.2.1
 * - Change default of $wgResourceLoaderMaxQueryLength to 2000
 * - Split out internal parseAndStash from the edit stashing API
 * - Fix dependency of ResourceLoaderSpecialCharacterDataModule
 * - Report uncaught errors via mw.track
 * - Remove MWLoggerMonologSamplingHandler
 * - Add release-notes for message escaping
 * - Avoid using DB_MASTER in makeLikeArray
 * - Replace Html::... with self::... in the Html class
 * - Move WikiEditor's special character data and messages into core for use in other extensions
 * - Add mobile target for mediawiki.confirmCloseWindow
 * - Correct typo in MediaWiki:Apihelp-paraminfo-param-formatmodules
 * - Set parameter default to array in WebResponse::setcookie
 * - Made User actually use the mQuickTouched process cache
 * - Made user preferences load from the master by default
 * - Don't require database access for ContentHandlerTest
 * - Removed view event from $wgAutopromoteOnce
 * - Made addAutopromoteOnceGroups check wfReadOnly
 * - Revert "mediawiki.action.edit.preview: Disable if there is no #wpTextbox1"
 * - Introduced User::touch method to bump the getTouched value using memcached
 * - refreshLinks.php: Limit rows scanned per query in deleteLinksFromNonexistent
 * - Made showJobs.php include abandoned jobs in --list
 * - ApiParse: Fix parse of new section title
 * - Remove unneeded variable assignment in Usercreate.php
 * - Fix inline documentation in WebResponse
 * - Changed user login logic to use less expensive touch method
 * - Fix typos in qunit tests
 * - LivePreview: Update the correct mw-editfooter-list
 * - Make wfWarn name the caller in Http::get
 * - Fix misleading $class = false default in Html::infoBox
 * - More specific types in doc tags in the Html class
 * - Fix TestingAccessWrapper::__call
 * - Made User::loadFromRow protected for sanity
 * - Deprecate wfDiff
 * - Made ProfilerStub return null instead of a dummy ScopedCallback
 * - Fixed the usage of $flags in loadLastEdit
 * - ApiParse: Forbid section=new when using page, pageid, or oldid
 * - LivePreview: Let's not potentially mangle #wikiPreview
 * - LivePreview: Notifiy user about errors
 * - Update OOjs UI to v0.9.4
 * - LivePreview: Support section=new for preview
 * - Remove never thrown UploadStashNotAvailableException
 * - PrefixSearchTest: Move insertPage from setUp to addDBData
 * - MediaWikiTestCase: Consistently use UTSysop user in setup/teardown
 * - Let extensions add entries to Special:DeletedContributions
 * - Replace mb_strtolower with strtolower
 * - mediawiki.action.edit.preview: Replace only title in firstHeading
 * - Use wikimedia/utfnormal library, add backwards-compatability layer
 * - Update MWLoggerLegacyLogger phpdoc

AbuseFilter

 * - Add help link to mw:Extension:AbuseFilter/Rules from Edit view
 * - Use https in composer.json
 * - PostgreSQL: Fix magic-value code for AbuseFilter
 * - Fix for legacy testwiki AFL entries (1 to 154)

CentralAuth

 * - Log promote to global renames in the global rename log
 * - Update RuboCop version and configuration file

CheckUser

 * - SECURITY: Add an edit token to Special:CheckUser

Citoid

 * - Insert inline transclusion instead of block
 * - build: Update grunt-banana-checker to v0.2.1
 * - Use 'rerender' event for generated content in citoid inspector

Collection

 * - The transition ext.collection.jquery.jstore module is no longer needed
 * - Rename js/ to modules/
 * - Rename Proposals to CollectionProposals
 * - Use message parameters instead of string replace
 * - Code style fixes to check_load_from_localstorage.js

ConfirmEdit

 * - Follow-up 804903b4a7: fix overlooked usage of removed $context var
 * - Revert "Getting rid of some globals"
 * - Allow previous revision text to be explicitly provided

ContactPage

 * - Fix undefined index warning

DonationInterface

 * - Fix regression with zero-amount error
 * - Don't do stupid things with the recurring param
 * - Zoom out PayPal integration tests
 * - Test that we are skipping the PP interstitial

Echo

 * - Allow multiple target pages per event

EducationProgram

 * - Add Ukrainian translations for EP namespaces

Flow

 * - Convert LQT unread messages into flow-post-reply notifications
 * - Revert "Revert "Add Flow MessagePoster""
 * - Revert "Add Flow MessagePoster"
 * - Add Flow MessagePoster
 * - Prepare for revert of patch in ConfirmEdit
 * - Fix flow_moderate_post.handlebars not found
 * - Don't consider visualeditor-enable
 * - Conditionally add switch buttons
 * - Clarify that this is not the usual sense of "Edit summary"
 * - Remove ContentFixers from Parsoid API
 * - Editor switcher
 * - Move Api classes into Flow\Api
 * - Handle null from Title::newFromText in Special:EnableFlow
 * - Hygiene: Remove unused activateForm handler
 * - Toolbar should appear to be within text area
 * - Fix missing var $type
 * - Accept a $node in mw.flow.editor.getFormat
 * - Move VE toolbar below the editing surface
 * - Add header purge code
 * - Make getHex public; this makes PHP shell debugging easier.
 * - Don't expect cuc_id to exist
 * - Prevent mixing up ltr usernames with timestamps in rtl
 * - Make sure workflows is always an array
 * - Wrap all textarea's for editing in a flow-editor class
 * - Add @ as a sequence to open mentions.
 * - Accept preload & preloadtitle params
 * - Display submitted topic content
 * - Hygiene: Use factory closures instead of Action classes
 * - Use standard box-sixing for mw-ui-input as well
 * - Refactor and implement mention inspector
 * - Change ConvertLqt -> ConvertLqtPage
 * - Block the user from the using the action=delete interface for topics.
 * - Fix wgFlowContentFormat docs and note that wikitext may be deprecated
 * - Hygiene: Remove 'mw-less testing' lines and empty comments
 * - Provide ConfirmEdit with the previous revision content
 * - Override $wgFlowContentFormat to wikitext if there is no Parsoid URL
 * - Notifications should not be sent by default during the import process
 * - First store workflow, then the rest
 * - Store data for IRCLine tests
 * - API tests use all Flow tables
 * - Ask for header content in specific format
 * - Adding $message of caught WikitextException object to displayed error
 * - Fix typo in RevisionViewQuery
 * - Use addModuleStyles for mediawiki.skinning.content.parsoid
 * - Correct typo in i18n message key
 * - Move edit link for posts above moderation actions
 * - Add Flow revisions to Special:DeletedContributions
 * - Don't assume you can view history for a rev if you can view content
 * - Add missing i18n messages to JS
 * - Fix incorrect apihelp i18n message

Gather

 * - Fix overriding of vector styles in resources definition
 * - Fix meta tags for collections
 * - Pagination of collection itself
 * - Add pagination on Special:Gather for list of collections
 * - Add pagination to Special:GatherList
 * - Collection::newFromApi Make user optional
 * - Add collections icon to menu
 * - Hygiene: Improve Collection::isOwner
 * - Don't let someone spoof another users collection
 * - Force labels to comply with the Title rules
 * - Prevent tutorial from showing if user clicks watchstar prior to load
 * - Always do an action if schema.log finished
 * - Add a link to Special:GatherLists to view hidden lists
 * - Hygiene: Fix js linting, jsdocs and qunit
 * - Fix special page names on Special:SpecialPages
 * - Get rid of 'type' stuff in ResourceLoaderImageModule
 * - Use ResourceLoaderImageModule's CSS selector templates
 * - Fix url schemas
 * - Rework init script for Special:Gather
 * - Don't access context in SpecialPage::__construct, it's not set yet
 * - Use User::equals
 * - Don't throw a plain \Exception
 * - lstprop=owner and a few bug fixes
 * - Fixing isBlocked on ApiEditList
 * - blocked users cannot manipulate collections
 * - Log anon watchstar clicks to schema
 * - Background size of collection images doesn't work properly.
 * - Fix spacing of content on tablet
 * - Style: Spacing issue in vector styles
 * - QA: Browser test for edit workflow

ImageMetrics

 * - Add a sanity check to the CORS test

LiquidThreads

 * - Move deprecated HTML attributes to CSS

MobileFrontend

 * - Fix notices on bogus language codes
 * - Hygiene: Fix false comment
 * - Hygiene: Don't load InfiniteScroll on _all_ pages
 * - Don't load mobile.talk on pages with no wikitext talk page
 * - Fix Next button for anonymous users
 * - Get rid of 'type' stuff in ResourceLoaderImageModule
 * - Use ResourceLoaderImageModule's CSS selector templates
 * - MediaViewer cancel button made to close viewer
 * - Avoid needless master queries on page views
 * - Hyphenate page titles
 * - Make list items easy to read by adding margin-bottom
 * - Fixes to the page action tutorial
 * - Debounce resize events
 * - Center ContentOverlay arrow alignment on element
 * - Add CodeMirror for alpha users to better understand wikitext

OpenStackManager

 * - Don't reset default puppet config when editing puppet config.
 * - '$project' is already the project name :(
 * - Include associated domains like . .eqiad.wmflabs for new instances

PageImages

 * - Rename 'source' property to 'original'
 * - Add 'source' parameter to API for getting original url

Popups

 * - Do API queries after API_DELAY
 * - renderer.article.getProcessedElements: Stop escaping the title and the extract
 * - Rename popups.eventLogging to popups.logger
 * - settings: Use .text instead of .html for option's label

Renameuser

 * - Update more log entries that are specifically about users

Scribunto

 * - SECURITY: Sanitize the content of Lua backtraces
 * - Allow Lua console on protected module pages

SemanticForms

 * - Fix for recent change to WikiEditorHooks::editPageShowEditFormInitial

TemplateData

 * - build: Update grunt-banana-checker to v0.2.1
 * - TemplateData: add PLURAL to message Templatedata-modal-notice-import-numparams

Translate

 * - Update version before MLEB release
 * - Load the other groups with search results in the group selector.
 * - Reindex tool to update index mapping
 * - Removed unwanted pixel fixed from switch icon

UniversalLanguageSelector

 * - Update version before MLEB release
 * - Disable failing Cucumber scenarios
 * - Revert "Update inputs to use mw-ui styles"
 * - Refactor showULSTooltip
 * - When changing language first time, language code was shown
 * - Clunky workaround for putting link into escaped message

UploadWizard

 * - Fix JS error happening when navigating away while on file step
 * - Record javascript errors to funnel log stream
 * - Make "npm test" work
 * - QA: Refactor for mediawiki_selenium 1.0.2
 * - Move startUploads to the upload step controller
 * - Move allowCloseWindow around until it makes sense
 * - Move showNext into the step controllers
 * - Link steps together less painfully

VisualEditor

 * - Explicitly pass oldid to ApiParse after saving
 * - Update VE core submodule to wmf/1.25wmf24 (16e15af)
 * - Allow parsefragment even if VE is not enabled for that title
 * - Restore Leli Forte's mt translations
 * - mw.ViewPageTarget: Disable pointer events on dimmed elements
 * - Follow-up 7c0ba1e: Revert catastrophic breakage of qqq.json
 * - Open the proper window when adding citation from the general dialog
 * - Update VE core submodule to master (248fc5d)
 * - Update VE core submodule to master (1d92641)
 * - Stash edits alongside the html -> wikitext stashing step
 * - Use ResourceLoaderModule::safeFilemtime instead of using filemtime directly
 * - i18n: Re-sort alphabetically
 * - Update VE core submodule to master (7bc93e7)
 * - Fake if missing or invalid
 * - MWInternalLinkAnnotation: Remove useless .toString call
 * - Update VE core submodule to master (fd7ee98)
 * - mw.Target: Defer parsing of edit notices to MWNoticesPopupTool
 * - mw.Target: Remove visible text filter for edit notices
 * - Use new isVisible method
 * - Update VE core submodule to master (3f59941)
 * - Update VE core submodule to master (2c27ba9)
 * - Update VE core submodule to master (5822d2f)
 * - Update border width transition hack
 * - Try not to die when RESTbase returns a 404
 * - Support an "other" page for special characters
 * - Handle a further 70 WikiEditor special characters
 * - Update VE core submodule to master (ae039bc)
 * - build: Update grunt-banana-checker to v0.2.1
 * - Use parseInt, not Number.parseInt
 * - Load all of WikiEditor's special characters
 * - Don't position category popups -10px up
 * - Simplify context item for MWAlienExtensionNodes
 * - Parent constructor simplification
 * - Verify welcome dialog exists before trying to close it
 * - Correct font sizes of everything on MonoBook
 * - Strip X-Parsoid Performance Headers from Visual Editor
 * - [BrowserTest] Disable the Cite button screenshot
 * - [BrowserTest] Redefine the Apply changes element for language screenshot
 * - [BrowserTest] Add padding to some more screenshots
 * - Fix choose event listeners
 * - When content and metadata have different revids, explicitly retry the higher one
 * - Send requests to RESTbase directly when so configured
 * - ApiVisualEditor: Rename $page to $title, since it's a Title, not a WikiPage
 * - [BrowserTest] Add padding to the "Apply changes" button screenshot
 * - [BrowserTest] Add padding to screenshots of the page settings dialog
 * - [BrowserTest] Add padding to the Edit Links screenshot
 * - [BrowserTest] Add padding to the page settings item screenshot
 * - [BrowserTest] Show the full Formatting pull-down in the screenshot
 * - Fixed the empty Transclusion Box problem
 * - Show beta welcome dialog before surface is ready
 * - Update VE core submodule to master (754d3eb)
 * - Move template icon code to setup event
 * - Update AUTHORS.txt, $wgExtensionCredits and .mailmap based on git shortlog
 * - Fix revId check on new pages
 * - Vertially centre cite-web icon
 * - Enable VisualEditor for Blueprint skin
 * - [BrowserTest] Add the toolbar to the special chars screenshot
 * - [BrowserTest] Add padding to the lists and indentation screenshot
 * - Replace buttons with select widgets in GeneralReferenceDialog
 * - [BrowserTest] Fix the lists and indentation screenshot
 * - [BrowserTest] Add padding to the Formatting menu screenshot
 * - Remove this.fragment setting from ReferenceDialog
 * - [BrowserTest] Add padding to editing tabs screenshot
 * - [BrowserTest] Add padding to Insert button screenshots
 * - [BrowserTest] Capture the whole Insert button in the screenshot
 * - Move append to after list builder
 * - Update VE core submodule to master (731b3ad)
 * - Check for the two revision IDs returned by the server being different
 * - Use new createFromElement method from ModelFactory

WikiEditor

 * - Don't force a separate http request for ext.wikiEditor.init
 * - Escape messages
 * - Move WikiEditor's special character data and messages out to core
 * - Use __DIR__
 * - Add extension.json
 * - Remove unused code, pass phpcs

WikiGrok

 * - Don't log page-impression or widget-impression
 * - Don't load WikiGrok on disambiguation pages
 * - Claim aggregation
 * - Add "composer test" command to run phpcs and make it pass

Wikidata

 * - Update Wikidata - fix problem with edit links on diff view, etc.
 * - Update Wikidata - fix dumpRdf script
 * - Update Wikidata - property suggester, valueview and fix bug in client

WikimediaMaintenance

 * - Fix cleanupT92775.php