MediaWiki 1.29/wmf.17/Changelog

Core changes

 * - Remove erroneous space in unset call
 * - RCFilters UI: Don't set reset button title in "restore" mode
 * - maintenance: Fix broken url in comment for createCommonPasswordCdb.php
 * - Xml: Add test for listDropDown and remove unused getArrayFromWikiTextList
 * - phpunit: Fix RecentChangeTest failure when coverage is enabled
 * - Revert "RCFilters: Change reset button title when it changes state"
 * - Disable filter by redirect Special:AllPages and query=allpages in miser mode
 * - RCFilters: Scroll popup up to top when it is reopened
 * - RecentChanges: Correct 'no matches found' message
 * - RCFilters: Change reset button title when it changes state
 * - Use executeOpHandlesInternal in SwiftFileBackend
 * - mediawiki.widgets: Remove autoEllipsis from TitleOptionWidget
 * - User::getRights phpdoc from return array to string[]
 * - Adjust message history-fieldset-title
 * - SpecialRecentchanges: Unbreak $wgAllowCategorizedRecentChanges
 * - Track usage of highlight feature
 * - Avoid database connection in SpecialSearchTest data provider
 * - RCFilters UI: Followup Ic97c7c6aae7: Only add state message if item is selected
 * - RCFilters: Update conflict messages
 * - resourceloader: Fix broken @coverage for ImageModuleTest
 * - RCFilters UI: Implement conflict global result message
 * - Watchlist: Fix form and preference overriding
 * - RCFilters UI: Create tooltips for filter states
 * - Mark 'jquery.autoElllipsis' module as deprecated
 * - resourceloader: Fix broken 'deprecated' string messages
 * - Remove unused 'jquery.arrowSteps' (deprecated in 1.28)
 * - RCFilters UI: Close gap between popup and input
 * - RCFilters UI: Remove custom margin from capsule item widgets
 * - RCFilters UI: Add a 'what's this?' link to filter groups
 * - Remove the localStorage replication of the block cookie
 * - Replace deprecated jQuery.nodeName
 * - Replace deprecated Context::getStats with MWServices::getStatsdDataFactory
 * - Remove deprecated noop functions
 * - ResourceLoaderOOUIModule: Minor code quality fixes, and more comments
 * - RCFilters UI: Separate name from paramName in filters
 * - resourceloader: Use SVG url when ResourceLoaderImageModule can't embed
 * - RCfilters UI: Change mute display for included filters
 * - RCFilters UI: Rework conflicts to be objects in filter or group context
 * - RCFilters UI: Adjust filter list header elements' alignment
 * - RCFilters UI: Update fieldset as in load
 * - RCFilters UI: Style adjustments for the FilterCapsuleMultiselectWidget
 * - Add password validation to Special:ChangeCredentials
 * - Update account creation form validation
 * - Show better error for anons on Special:EmailUser
 * - RCFilters: Prevent duplicate filter names
 * - Revert "Default to CACHE_ACCEL if user skips advanced settings"
 * - RCFilters: Don't allow underscore in filter or group names
 * - RCFilters: Test abstract class func directly, not in subclass tests
 * - jquery.ui: Add previously undocumented changes in PATCHES
 * - Revert "Improve sorting on SpecialWanted*-Pages"
 * - Make selectRowCount (hopefully) work in MSSQL.
 * - Mark WikiRevision methods as public
 * - Default to CACHE_ACCEL if user skips advanced settings
 * - rv accidental inclusion of debug code in TemplateParser
 * - Add --tidy option to maintenance/parse.php
 * - mw.widgets.SearchInputWidget: Do not pass `type: 'search'` to TextInputWidget
 * - Fixing search results percentage width
 * - Revert "[search] Remove more dead code"
 * - Make sure Swift store operations close the source file handle
 * - postEdit: Only call mw.cookie.get if needed
 * - Better path traversal prevention in TemplateParser.
 * - Add image.img_user, image.img_timestamp index
 * - Selenium tests in Node.js using WebdriverIO
 * - Don't use $this as a function argument
 * - Make infused and non-infused DateInputWidget consistent
 * - RCFilters UI: Use data-feature-in-structured-ui in the frontend
 * - RCFilters UI: Adjust popup positioning again
 * - Make MessageCache use the immutable text cache during cache rebuilds
 * - Avoid breaking wikis that were modifying $wgDummyLanguageCodes
 * - Skin: Only load jquery.makeCollapsible if needed
 * - Skin: Preload jquery.tablesorter based on rough heuristics
 * - mw.loader: Add tests for mw.loader StringSet fallback
 * - Change 'history-show-deleted' message to 'Revision deleted only' for clarity
 * - Add support for PHP7 random_bytes in favor of mcrypt_create_iv

Vendor

 * - build: jakub-onderka/php-parallel-lint
 * - README: Add --no-dev and version information to instructions

ApiFeatureUsage

 * - Set a size for feature aggregation
 * - Use the _aliases endpoint for fast index names retrieval
 * - Update ApiFeatureUsage for elasticsearch 5.x

BetaFeatures

 * - build: Update stylelint to 0.4.1

CirrusSearch

 * - CompSuggest: Increase default limit from 50 to 255
 * - Improve speed of scrolling results in comp suggest build
 * - Make mapping dump return all mappings, not just page mapping
 * - Fix broken browser tests
 * - dumpIndex.php: add support for elastic5
 * - Allow completion suggester to work with titles that look like integers
 * - Remove some dead code in SuggestBuilder
 * - Don't pass null suggest queries to elasticsearch
 * - Report update stats
 * - Add support for elasticType in sendData/sendDeletes

Cite

 * - build: Update stylelint to 0.4.1
 * - Send better HTML to the clipboard
 * - build: Mark Node file as ES6

CodeEditor

 * - build: Update stylelint to 0.4.1
 * - Align colors to WikimediaUI color palette

CodeReview

 * - Plaster-over regex compilation failure

Cognate

 * - Cast $row->page_namespace to int in populateCognatePages

CollaborationKit

 * Newly deployed extension

ConfirmEdit

 * - build: Update stylelint to 0.4.1

ContentTranslation

 * - Replace inline tabs, each with a space
 * - Fix error in mw.cx.tools.SearchTool
 * - CX2: Use OO.ui.Toolbar for Formatter tool
 * - CX2: Remove the padding for the search tool
 * - Move all style related files to ui/styles
 * - Infobar rewrite using OOjs UI
 * - Remove the progressbar from the translation view in CX2
 * - Add mw.cx.TargetArticle class
 * - Revert "Temporarily disable template, category related tests (3rd time)"
 * - Temporarily disable template, category related tests (3rd time)

DonationInterface

 * - Update smashpig lib
 * - Comments
 * - Check for maintenance mode before anything
 * - Comments and whitespace
 * - More verbose test titles

Echo

 * - Replace deprecated Context::getStats with MWServices::getStatsdDataFactory
 * - Use words for describing notification counts in HTML text node

ExtensionDistributor

 * - build: Update stylelint to 0.4.1

FlaggedRevs

 * - build: Update stylelint to 0.4.1

Flow

 * - New editor switching widget
 * - Change Special:Version description to 'Discussion system'

InterwikiSorting

 * - Use ExtensionFunctions instead of BeforeInitialize hook

Kartographer

 * - build: Mark Node file as ES6

Linter

 * - Expose category totals in API response

MobileFrontend

 * - Replace property with mixin for Android 2.x and enforce with stylelint
 * - Localize registration date on user pages
 * - Remove unused message keys from MobileFrontEnd.
 * - Use OO.ui.confirm for edit abandon message

NavigationTiming

 * - build: Enable ESLint for tests/ and fix violations
 * - ext.navigationTiming: Only load eventlogging when needed
 * - ext.navigationTiming: Move hoisted functions before statements
 * - Remove redundant 'return true' from PHP hooks

ORES

 * - build: Update stylelint to 0.4.1
 * - Update RCFilters conflict messages
 * - Hide oresRCHideNonDamaging pref if rcenhancedfilters is enabled
 * - Update "What's This" messages for RCFilters
 * - Remove maybebadfaith naming hack
 * - Add ORES conflicts and What's This?
 * - Follow-up 4a892c8fb: also apply maybebadfaith hack in queryCallable
 * - Reword highlight preference
 * - Follow-ups to 980fb74d7: move classic highlights to watchlist in 'on' mode
 * - Allow the ORES extension features to be 'on' by default
 * - Minor follow-ups to 4a892c8fb
 * - Add ORES filters to new RCFilters

OpenStackManager

 * - SpecialNovaInstance: Remove some totally useless domain code.

PageViewInfo

 * - Fix query parameters in examples

Popups

 * - build: Update stylelint to 0.4.1
 * - Fix horizontal gradient for RTL page previews
 * - renderer: Really ensure images don't overflow
 * - Show Page Preview on mouseenter and keyup events
 * - i18n: changes to Page previews in beta tab of preferences
 * - Hygiene: Remove createRootReducer
 * - Hygiene: Remove createBoundActions

QuickSurveys

 * - Don't run bucketing scenarios against Beta Cluster

RelatedSites

 * - Unbreak after my If1df8ac607186eaca0d63399fe933e5306e8f1e4
 * - DMOZ is closing today, don't display links to it

RevisionSlider

 * - Document RevisionSliderBetaFeature setting
 * - Rename CSS classes for help text
 * - Add rubocop rules and make it pass

Scribunto

 * - Fix pre-wrap formatting for Mozilla Firefox

TimedMediaHandler

 * - Remove obsoleted maint scripts in favor of requeueTranscodes.php

Translate

 * - ElasticTTM: set the index when deleting docs
 * - Use mw.message.parseDom instead of mw.message.parse
 * - Always use module 'oojs-ui-core'
 * - Replace editToken by csrfToken
 * - Use csrf token instead of edit token (2nd attempt)
 * - Update translator-stats to account for expiring user groups

TwoColConflict

 * - Fix column layout for IE<10
 * - Fix flex display of columns for IE10
 * - Make edit merge screen responsive
 * - Use mw prefix on all HelpDialog CSS classes
 * - Document TwoColConflictBetaFeature setting
 * - Load SVGs using the ResourceLoader
 * - Added QUnit tests for the HelpDialog module
 * - Remove conflict warning for users of visual editor

UploadWizard

 * - build: Don't run eslint in fix mode

VisualEditor

 * - Update VE core submodule to master (f294778e6)
 * - Disable clickable categories bar in wikitext mode
 * - Update VE core submodule to master (a63435906)
 * - Replace deprecated Context::getStats with MWServices::getStatsdDataFactory
 * - Update VE core submodule to master (ac6d7031c)
 * - Follow-up 335b56728: Reality doesn't run in perma-debug mode :-)
 * - Follow up ec559041: abort notices display early if no notices
 * - Follow-up 7a8cc04f0: Re-set qqq messages that i18n bot destroyed
 * - VisualDiff: Add custom messages for change descriptions
 * - Update VE core submodule to master (ef5dc965f)
 * - Follow-up eb8ba26a: Make MWNoticesTool#setNotices display its own popup
 * - MWNoticesPopupTool: When setting notices, clear existing notices
 * - DesktopArticleTarget: Only try to show notices if some exist
 * - Introduce visual differ in the save dialog
 * - Update VE core submodule to master (5c4c9e8ed)
 * - Update VE core submodule to master (8817821b6)
 * - ve.ui.MWLinkAction: Improve ISBN and RFC/PMID autolinking
 * - ve.ui.MWLinkAction: Use delayed sequence
 * - Update VE core submodule to master (da310202f)
 * - Don't load VE or NWE on lint-targetted pages (until that works)
 * - MWAceEditorWidget: Fix position of ace tooltip
 * - MWExtensionWindow: Remove pointless zero argument from ve.debounce call
 * - MWMediaInfoFieldWidget: Add extra rules for word-break: break-word
 * - Remove MSIE from blacklist, already blacklisted upstream
 * - Update ` ` support for Parsoid changes
 * - Update VE core submodule to master (41134af2b)
 * - Update gallery actions in response to changes

WikiEditor

 * - build: Update stylelint to 0.4.1

WikimediaEvents

 * - Schema for tracking usage of highlight feature
 * - Add tracking of sister projects and positions
 * - Re-enable sistersearch AB test

WikimediaMessages

 * - RCFilters tour: align Got It button to the left
 * - RC Filters: guided tour for beta feature
 * - Add grammatical cases for "Wikimedia Commons" (Bosnian)
 * - Update grammatical cases for "Wiktionary" (Bosnian)
 * - Follow-up I9f72ce29: Better RC Filters screenshot