MediaWiki 1.25/wmf7/Changelog

Core changes

 * - Update SyntaxHighlight_GeSHi for cherry-picks
 * - Bump MobileFrontend and WikiGrok
 * - Bump MF and WikiGrok
 * - Update VisualEditor for cherry-picks
 * - Updating SecurePoll to pull in I6c2ddb60
 * - MWException: Log stack traces for php errors (not exceptions)
 * - Update CommonsMetadata to 1.25wmf7 HEAD
 * - Update cldr to 1.25wmf7 HEAD
 * - SWAT update Cirrus
 * - Update WikiGrok and MobileFrontend
 * - Update VisualEditor for cherry-pick
 * - Updating Echo to pick up I7304046c
 * - update CentralNotice submodule
 * - update CentralNotice submodule
 * - Update WikimediaMessages to I7487a425
 * - Backport MediaViewer options menu layout fix
 * - Update SecurePoll for Ib27e72a2
 * - Update BounceHandler to 1.25wmf7 HEAD
 * - Update Flow for cherry-pick
 * - update VisualEditor for cherry-picks
 * - Hide HHVM tag on Special:{Contributions,RecentChanges,...}
 * - Bump flow submodule in 1.25wmf7
 * - Add WebResponse::getHeader
 * - Update Flow to 1.25wmf7 HEAD
 * - MobileFrontend: pick https://gerrit.wikimedia.org/r/171778
 * - Update VisualEditor for cherry-pick
 * - Revert layout changes in Media viewer
 * - Bump VE
 * - Make rubocop ignore remote repositories
 * - API: Make uselang=user the default
 * - Cleanup mw ui checkbox margins
 * - Update OOjs UI to v0.1.0-pre (b38d485723)
 * - Remove Profiler::setInstance
 * - Profiler code cleanup
 * - wfDebugLog: remove unused global
 * - API: Split list=deletedrevs into prop=deletedrevisions and list=alldeletedrevisions
 * - WikiPage::selectFields: Do not include page_counter
 * - Select column page_lang in prop=info
 * - Profiler: Call getContentType only once in logData
 * - Make load.php parse in PHP 4 again
 * - UserGetLanguageObject hook should accept any IContextSource
 * - Correctly parse &lt;indicator/&gt; contents, Parser rejiggering
 * - mediawiki.ui: Remove dead code from checkbox
 * - mw.ui:checkbox: Fix indentation and add zero before decimal
 * - Fix fatal error in I0349cfe0e322
 * - Update article count when pages are moved
 * - Support empty DB names in LoadBalancer more fully
 * - jquery.getAttrs: Replace deprecated nodeName/nodeValue with Attr.name/value
 * - jquery.getAttrs: Remove compat code for IE6/IE7
 * - Made LogEventsList use the log bloom filter, not just the Article class
 * - Clear DeferredUpdates state via setUp
 * - Update OOjs UI to v0.1.0-pre (571f26d0ab)
 * - UserLogin: Allow extensions to add valid error messages
 * - resourceloader: Document that WikiModule::getDB may return IDatabase
 * - die with explanation when \Psr\Log\LoggerInterface is missing
 * - Typo: atleast -&gt; at least
 * - mw.Title: Add new static methods `newFromFileName`, `newFromUserInput`
 * - Add an &quot;ArticleDeleteAfterSuccess&quot; hook
 * - Remove trailing whitespace from api.php's HTML output
 * - SpecialSearch: Use CSS instead of cellpadding and cellspacing
 * - Add test cases to SpecialPageFactoryTest for registration via callback
 * - Update OOjs UI to v0.1.0-pre (eee616d664)
 * - hhvm: fix FormatJsonTest::testParseTryFixing for lenient json parser
 * - Change position of &lt;model&gt; and &lt;format&gt; tags in XML dumps.
 * - Always return string on HTMLTagFilter::getInputHTML
 * - Split doc for $wgHKDFSecret/$wgHKDFAlgorithm in DefaultSettings.php
 * - Fix doc of WikiPageTest::newPage
 * - Allow /-/ in MediaWikiVersionFetcher::fetchVersion
 * - Remove collateOnly from ProfilerStandard and subclasses
 * - Remove ProfileMwprof
 * - Add executable rights for executable (bash) files
 * - API: Add doc warning to ApiPageSet::populateFromQueryResult
 * - chmod 755 bash &amp; Perl files, chmod 644 .css file
 * - API: Actually use api-help-param-no-description
 * - API: Fix simplified continuation module skipping
 * - Require PHP &gt;= 5.3.3
 * - Remove double semicolon
 * - Fixed spacing
 * - Parse 'upload_source_url' message on SpecialUpload
 * - Add a note when the return value was added to mediawiki.loader.using
 * - Add LinkBatch to Special:LinkSearch
 * - Update OOjs UI to v0.1.0-pre (da4b0d5c14)
 * - Fixed possible db error log spam when cluster=* in wfWaitForSlaves
 * - Use MWLogger logging for wfLogProfilingData
 * - test: Check banana status for includes/api/i18n/* too
 * - resourceloader: Add support for delivering templates
 * - Use MWLogger logging for legacy logging methods
 * - Support for message function in confirmCloseWindow
 * - mediawiki.api: Transform arrays with join('|') in query parameters
 * - Fully replace Title::moveTo with MovePage
 * - Prepare repository for running RuboCop after every push to Gerrit
 * - Import.php: Use Config instead of globals

Vendor

 * - Added the Plancake e-mail parser library to MediaWiki using Composer
 * - Update autoloader-suffix to match repo name
 * - Followup bump to php 5.3.3
 * - Require PHP &gt;= 5.3.3 as per core

CentralAuth

 * - Add i18n for API module help
 * - Make LocalPageMoveJob::__construct compatible
 * - GlobalRenameQueue: Allow users to add a comment for the public log
 * - LocalPageMoveJob: Use MovePage
 * - Don't let users merge themselves

CentralNotice

 * - rollback new controller modules due to mobile fail
 * - Use BannerChoiceDataProvider in allocation display
 * - Fix interwiki DB call in BannerChoiceDataProvider
 * - bannerChoiceData and bannerController.lib modules
 * - QA target beta labs for Jenkins builds
 * - satisfy ruby lint
 * - Unit tests for BannerChoiceDataProvider
 * - remove hidden feature, it was choking the CI job
 * - More table alias fixes
 * - Add the centralnoticebannerchoicedata API module
 * - Add BannerChoiceDataProvider
 * - Skeletal browser tests
 * - Alias table names to support prefixed schemas

CirrusSearch

 * - Fix pool counter usage
 * - Remove checkCounts.php
 * - Fix undefined offset in updateOneSearchIndexConfig
 * - Provide sledgehammer to disable regular expression searches
 * - Support specifying replica count per index type

CodeEditor

 * - Remove whitespace at the end of lines

CodeReview

 * - Replace dirname( __FILE__ ) with __DIR__

CommonsMetadata

 * - Handle TemplateParser::parsePage returning an empty array

ContentTranslation

 * - Updates to the Special:CX header
 * - Call the BeforePageDisplay hook before adding HTML
 * - If CX database not configured, do not fail publishing
 * - Create translationview module
 * - Common database for content translation and APIs
 * - If template configuration not present, filter all
 * - Progressbar: Change the progress info to tooltip
 * - Open the published article in new tab when clicked on success message

Echo

 * - Bug: parenthesis are allowed in namespaces

EventLogging

 * - Map JSON Schema 'integer' type to MySQL BIGINTs rather than INTs

Flow

 * - Logged-in users should save null values to rev_user_ip
 * - Temporary remove UserTuple id &amp;&amp; ip restriction
 * - Fix fatal on watchlist
 * - Add i18n for API module help
 * - Add temporary ext.flow.new module to avoid missing JS
 * - Regenerate autoload.php to add missing file
 * - spaces -&gt; tabs
 * - QA: reuse &quot;When I have created a Flow topic&quot;
 * - Fix undoing topic moderation
 * - Get rid of .offset undefined error
 * - Remove unused autoExpand animationtime
 * - J2f - Add minimal topic list API for TOC
 * - QA: fix typo that made step pending by accident
 * - QA: update user strings, remove unnecessary expect clause
 * - QA: forgot to change a &quot;should&quot; statement
 * - QA: delete header test
 * - Bug: Wrong i18n message for some moderation actions
 * - Bug: Finish removing post_moderation_state msg
 * - Expand anchors to full URL on server rendering
 * - Update PostRevision documentation
 * - Switch to using template mechanism provided by core.
 * - Hygiene: Standardize spelling of API classes and methods.
 * - Validate UserTuple constructor input
 * - Hygiene: kill fake post_moderation_state i18n message
 * - Hygiene: Make ObjectManager instantiation readable
 * - Restore used namespaces in Action.php
 * - Fetch title content from API
 * - Make sure isRecordHidden doesn't return true is run more than once
 * - Make watchlist topic title link to topic with with unread posts highlighted
 * - I-1: Finish topic moderation updates
 * - J-1: Comment moderation updates
 * - H-8. Implement boardHistory component features
 * - Update lightncandy and remove flow_component
 * - QA: use newest watch locators, simplify
 * - QA: update for newest Hide element
 * - Add test for wikitext-html-wikitext roundtrip
 * - Throw correct exception when failing to contact Parsoid
 * - Hygeine: Remove stub/unused links from API
 * - Show more descriptive error message for insufficient permissions
 * - Remove initStorer callback

GeoData

 * - Correctly populate pageset in ApiQueryGeoSearchElastic

GlobalCssJs

 * - Use LoadBalancer::getConnectionRef so that reuseConnection gets called

Mantle

 * - Name and shame modules that still use ResourceLoaderTemplateModule
 * - Remove Handlebars Mantle dependency
 * - Deprecate one in favour of once
 * - Register Handlebars with core
 * - Register Hogan with mw.template
 * - Split out ResourceLoaderTemplateParserModule from ResourceLoaderTemplateModule

Math

 * - VisualEditor: Add selection restriction to command
 * - Remove Undesired spaces after math expressions

MobileFrontend

 * - Scrolling on reference drawers in every mode
 * - Make sure we don't show WikiGrok in version B unless there are suggestions
 * - Removing spinner from Thanks interface in WikiGrok v B
 * - Fix grep errors on pre-commit (dev-scripts/pre-commit)
 * - Make make jscs use grunt jscs
 * - Hygiene: Make sure icon styles only run on older icons
 * - Click track clicks to references
 * - Update watchstar icons
 * - Tools: Run make jshint with grunt
 * - Fix WikiGrokDialogB button spinner
 * - Hygiene: Fix rubocop warnings
 * - Making sure that user is thanked regardless of EventLogging success
 * - ? -&gt; :
 * - Changing WikiGrok v B copy per discussion with Dario, Maryana, and Moiz
 * - Hygiene: Put TableOfContents in own file
 * - Hygiene: Clearly identify when/how things get initialised.
 * - Make sure notifications has loaded click tracking code
 * - i18n: Remove unnecessary quotation mark
 * - WikiGrok A/B test dry run
 * - Hygiene: MobileWebCta
 * - Add wikidata descriptions
 * - Add QUNIT_MODULE filter for grunt qunit command
 * - Fix editor switcher
 * - QA: update beta checkbox locater and Gemfile
 * - Conform to the MobileWebWikiGrok schema
 * - Fix jscs errors on MobileWebClickTracking
 * - Move progress-bar.js to modules/uploads/ProgressBar.js
 * - Instrument search, hamburger and notification clicks
 * - Docs: Correcting WikiGrok init function description
 * - Separate the entry point modules
 * - Hygiene: Kill unnecessary folder/readme
 * - Hygiene: Correct documentation
 * - Add max height and scroll to reference drawer
 * - Don't run eventLogging in QUnit tests
 * - Hygiene: Move settings into standalone module
 * - Alpha: Hide notifications bell icon when spinner is shown
 * - Kill M.isApp method and less/app directory
 * - Remove page description from Special:MobileOptions
 * - Remove old opt-out code
 * - Fix MobileWebWikiGrokError event logging
 * - Change &quot;Read in another language&quot; button to neutral button
 * - Hygiene: Add save message by default to Overlay.js
 * - Fix &quot;Undefined index&quot; notices in ApiMobileView
 * - Hygiene: Complete JS documentation
 * - Be consistent in &quot;modules-to-load&quot; declaration
 * - Ensure notifications overlay code runs
 * - Redirect to Section, if possible, after edit
 * - Revert &quot;Revert &quot;Respect existing X-Analytics header, if set&quot;&quot;
 * - Hygiene: Remove unused template variables in Page and Section
 * - Lolz CamelCase
 * - Enable routing on TalkSectionOverlay
 * - Hygiene: Make add talk discussion a route.
 * - Only assume sections are collapsible if they are wrapped in a div
 * - Tools: Run `make jsduck` on git review
 * - Adding alma mater to WikiGrok version A
 * - Show intermediate loader when loading image overlay
 * - Update reference drawer styling
 * - Hygiene: Fix jscs errors
 * - Fix broken switcher icons in alpha for VE
 * - Hygiene: Refactor talk overlay
 * - Tests: Talk overlay
 * - Hygiene: Address template FIXME, introduce overlay header partial
 * - claim.correct must be boolean for WikiGrok version A
 * - Add CategoryOverlay to show categories of a page
 * - Center the CTA drawer icon
 * - Set collapsible-heading cursor to pointer
 * - Hygiene: Kill unnecessary mobile.beta.common
 * - Hygiene: Fix the language sorter mess
 * - Fix close icon in image overlay (alpha)
 * - Only load notifications and user module where necessary
 * - Hygiene: Code format
 * - WikiGrokDialog UI tests
 * - Fix nonexisting methods in WikiDataApi
 * - Hygiene: Enforce requireSpacesInsideParentheses
 * - Tools: Complain about spaces missing inside parentheses
 * - Test WikiGrokResponseApi.js
 * - Fix WikiGrokDialogB answer recording
 * - Hygiene: Fix method chaining code style
 * - Code wars: the empire strikes tap
 * - Fix the notifications icon in alpha
 * - Link to Special:Nearby out of the article
 * - Improve reference display for better readability (beta and alpha)
 * - Restore the more button to the watchlist
 * - Set user language in api request so notifications are localized
 * - Fix all drawers not hiding after clicking the page
 * - Revert &quot;Respect existing X-Analytics header, if set&quot;
 * - Hygiene: Add another FIXME for the future.
 * - Hygiene: Make sure description.descriptions is defined so we don't error
 * - Conditionally load mobile.newuser code
 * - Hygiene: Remove mobile.stable.styles
 * - Make it possible to visually unwatch an article
 * - Hygiene: Move watchstar styles to appropriate location
 * - Hygiene: Move tutorial styling into the appropriate module
 * - Hygiene: Create array of style modules
 * - Hygiene: Fix indent
 * - Complete deprecation of mw.mantle.template
 * - Hygiene: Checkboxes on Special:MobileOptions (alpha) -&gt; mw.template
 * - Hygiene: Wikigrok B should use mw.template
 * - Hygiene: ImageOverlay and TalkOverlays should use mw.template
 * - Hygiene: Editor overlay using mw.template
 * - Hygiene: Notifications using mw.template
 * - Hygiene: Rewrite references to use mw.template
 * - Hygiene: Move PageList to core template mechanism
 * - Hygiene: Componentise mobile.stable.common
 * - Hygiene: Kill a bunch of unused messages
 * - Respect existing X-Analytics header, if set
 * - Hygiene: Change source to task_type for consistency
 * - Only left align tag buttons
 * - Style Login error messages in stable, too
 * - Log an error when WikiGrok is unable to load labels
 * - Record all answers (+ &amp; -) in wikigrok b
 * - i18n: Add missing &quot;please wait&quot; message to watchstar
 * - Hygiene: Don't use ResourceLoaderTemplateModule when you don't have to
 * - Hygiene: Kill the overlay template related warnings
 * - Hygiene: Migrate mobile.contentOverlay to new template mechanism
 * - Hygiene: mobile.special.uploads.scripts should use core templates
 * - Hygiene: Move tests over to core templating mechanism
 * - Hygiene: mobile.ajax should use core template mechanism
 * - Hygiene: Nearby should use core templating mechanism
 * - Fix OverlayFooterLink template
 * - Hygiene: Page issues use core template mechanism
 * - Hygiene: Move over VE to new template mechanism
 * - Add alma_mater (schools) to WikiGrok Dialog b
 * - i18n: Correct positioning for the issues icon in RTL wikis
 * - Hygiene: Add mobile mode getter
 * - VE: Don't set @grayDark colour for tool titles in disabled widgets
 * - Enable meta viewport width=device-width
 * - Really Activate $wgUserMediaWikiUIEverywhere everywhere
 * - Hygiene: AbuseFilter overlay and panel should use core templates
 * - Hygiene: Use core template method in mobile.startup
 * - Use Hook to add valid error messages
 * - Hygiene: Stop compile deprecation warnings
 * - Hygiene: Migrate modules using 'parse' message command to ResourceLoaderParsedMessageModule
 * - Ensure event logging works with wikigrok
 * - Hygiene: Use core templates for table of contents
 * - Implement WikiGrok response API
 * - Show logout link on Special:MobileMenu when JS is disabled
 * - Fix: Really truncate long usernames
 * - Deprecate usage of `one`. Use `once`
 * - Log WikiGrok errors
 * - Only load LanguageOverlay when needed, use M.loadModule
 * - Create generic intermediate loader function
 * - Fix WikiGrok B license link styling
 * - WikiGrok B: Advance without selecting a tag
 * - Add query parameter to force WikiGrok version
 * - Support other instance types
 * - Wikidata API enhancements
 * - Correctly identify humans
 * - Fixing some random WikiGrok issues and regressions
 * - Tap code be gone!
 * - Show similar experience for both WikiGrok versions A and B.
 * - Hygiene: Fix jscs errors so I can merge again
 * - Introduce WatchList class
 * - Remove login icon from Special:MobileMenu for non-JS users
 * - Allowing UserJS and UserCSS within the Minerva skin
 * - Hygiene: Fix documentation
 * - Fix search input and search button missalignment (js disabled)
 * - Change WikiGrok tags elements to buttons
 * - Close search overlay when clicking on the overlay background
 * - Add i18n for API module help
 * - Hygiene: Add missing WikiGrok documentation
 * - Save summary in VisualEditor
 * - Don't add a ToC on page actions
 * - Hygiene: Fix PHPDoc warnings
 * - Restore the place on Nearby for back button
 * - Fix no-redirecting Cta in Edit-workflow

MultimediaViewer

 * - Make room for arbitrary i18n text length in the options dialogs
 * - Revert layout changes
 * - Change OO.ui.InlineMenuWidget → OO.ui.DropdownWidget for OOUI upgrade
 * - Layout adjustment for right data column

OpenStackManager

 * - Add hiera config link to project special page

Parsoid

 * - Update external path from 'php/modules' to 'modules'

Scribunto

 * - Add i18n for API module help and mark ApiScribuntoConsole as internal

SecurePoll

 * - Add SecurePoll arbcom list creator (mainspace only edits)
 * - Supply jump-text when creating poll, and pass title message to remote poll

SemanticForms

 * - New googlemaps &amp; openlayers form inputs, used when Semantic Maps not installed
 * - Added necessary additional '&amp;'
 * - Version 3.0-alpha

SyntaxHighlight_GeSHi

 * - Avoid file glob in SyntaxHighlight_GeSHi::getSupportedLanguages

Thanks

 * - Add i18n for API module help

TimedMediaHandler

 * - Fix: &quot;Undefined index: bandwidth&quot;

Translate

 * - Add length check to YandexWebService
 * - Use correct gender in the translations table on ManageTranslatorSandbox
 * - Update Translate version before MLEB release

UniversalLanguageSelector

 * - UserGetLanguageObject hook should accept any IContextSource
 * - Update ULS version

UploadWizard

 * - Add i18n for API module help
 * - Remove reservedIndex
 * - Move stupid DOM-bound events to OO EE syntax
 * - Move updateFileCounts to the upload controller
 * - QA: date created is now a required field
 * - Make details and deed steps more sane
 * - Move setSkipTutorialPreference to Tutorial class
 * - Cast UploadWizardErrorFlowEvent.message to string
 * - Remove default date population with &quot;now&quot;
 * - Make tutorial step a controller and UI class

UserMerge

 * - Revert translations by Paladox

VisualEditor

 * - Update VE core for cherry-picks (7819523)
 * - Update VE core for cherry-pick
 * - Followup a054a75: don't reintroduce removed template parameters
 * - Update VE core for cherry-picks
 * - Followup a86d824: fix reference to this in foreach callback
 * - Followup c232083: use getRelativeTitle for template titles
 * - Fix craziness in template dialog focusing
 * - Update VisualEditor core for cherry-pick
 * - Followup 31bafa1: forgot to rename 'data' to 'args' for citation commands
 * - Follow-up 07251d0: Add mobile target to RangeFix
 * - QA: remove stuff now that iframes are gone
 * - Revert &quot;Clear selection after tearing down surface to work around Firefox bug&quot;
 * - Fix indicator alignment in MWCategoryItemWidget
 * - Add the RangeFix library to VisualEditor.php
 * - [BrowserTest] WIP adding cases to test other options under Page Settings to options.feature
 * - Kill MWCategoryWidget#onLookupEnter
 * - Followup 0165a53: don't store an mw.Title object instead of a string in TemplateModel
 * - Followup 0165a53: fix typo causing undefined to be passed to mw.Title
 * - [BrowserTest] no iframes for switch mode test
 * - [BrowserTest] no more iframes for &quot;no review&quot; message
 * - Replacing MWTitleInputWidget.getValue with MWTitleInputWidget.getTitle
 * - [BrowserTest] no more iframes for transclusion
 * - [BrowserTest] no more iframes for switch modes test
 * - [BrowserTest] no more iframes for References
 * - [BrowserTest] no more iframes for options
 * - [BrowserTest] no more iframes
 * - [BrowserTest] no more iframes for Media test
 * - [BrowserTest] no more iframes for Links test
 * - MWReferenceGroupInputWidget: Remove dummy call to onInputChange
 * - [BrowserTest] click More button, no iframes
 * - MWGalleryInspectorTool: Provide the tool in the toolbar
 * - [BrowserTest] no more iframes for Cite test
 * - Clean up LookupInputWidget subclasses and use new functionality
 * - [BrowserTest] Resume Editing no longer in iframe
 * - [BrowserTest] stuff moved out of the iframe to the main page
 * - Pass $overlay to redirectTargetInput in MWSettingsPage
 * - AUTHORS.txt: Re-update for late 2014
 * - MWTransclusionDialog: Blur active input when switching modes
 * - Update &quot;page was last modified on date, at time&quot; footer line when saving
 * - Add forgotten $overlay pass-through in MWReferenceDialog
 * - Remove more references to ve.bind
 * - Missing message from table merge
 * - Toolbar: Make styling and insert menus collapsible
 * - Preserve original data inside parameter objects too
 * - Also add tableCaption to mwTable parentNodeTypes hack
 * - Followup e0981a3: don't pass undefined to getClassAttrFromAttributes
 * - Add i18n for API module help
 * - Hide page status indicators even if they aren't :visible
 * - Create mwTables with wikitable attribute by default
 * - Use ClassAttributeNode mixin in MWBlockImageNode
 * - Introducing isValid in MWTitileInputWidget
 * - Introducing getTitle in MWTitleInputWidget
 * - MWTransclusionModel: Exclude parts serialising to '' from the plain object

WikiEditor

 * - Revert &quot;Add SVG versions of toolbar icons&quot;
 * - Revert translations by Paladox

WikiGrok

 * - Updating Response API for new schema (adding isLoggedIn)
 * - DB store
 * - ApiResponse: return success status or die on EventLogging fail.
 * - Allow for null answer in response api.
 * - Debug mode
 * - Fix I7c0796219bd8b842e7207f6f8a5dec380f576287
 * - Validate claims in ApiResponse

WikimediaMessages

 * - Add securepoll-dblist-securepollglobal message

cldr

 * - Prevent PHP notices and broken time displays

wikihiero

 * - VisualEditor: Add selection restriction to command