MediaWiki 1.29/wmf.20/Changelog

Core changes

 * - API: Optionally include in job queue size in maxlag
 * - chmod -x SpecialNewpages.php
 * - Sync up with Parsoid parserTests.txt
 * - MediaSearchWidget: Listen to "change" event to reposition
 * - Use classes instead of IDs for TOC collapsing
 * - Fixes to mw.notifications
 * - Add EtcdConfig class
 * - stylelint: Remove no-unsupported-browser-features exceptions
 * - EditPage: Fix typo in comment
 * - Add UserGroupMembership details to the UserGroupsChanged hook
 * - Move count of revisions/files out of undelete log comment
 * - Use IDatabase type hints in /maintenance
 * - objectcache: Complete code coverage for CachedBagOStuff
 * - objectcache: Fix CachedBagOStuff to use backend makeKey
 * - Database: clean up lockTables and add postgres support
 * - RCFilters UI: Check that filter exists before changing its state
 * - Update HISTORY for 1.28.1/1.27.2/1.23.16
 * - Add .rej files to .gitignore
 * - SECURITY: Do not allow users to undelete a page they can't edit or create
 * - SECURITY: Always normalize link url before adding to ParserOutput
 * - SECURITY: Don't write LocalisationCache to temporary directory
 * - SECURITY: Whitelist DTD declaration in SVG
 * - SECURITY: Escape wikitext content model/format in message
 * - SECURITY: SpecialWatchlist: Check CSRF token when using "Mark all pages visited"
 * - SECURITY: API: Don't log "sensitive" parameters
 * - SECURITY: XSS in search if $wgAdvancedSearchHighlighting = true;
 * - SECURITY: Do not directly redirect to interwikis, but use splash page
 * - RecentChanges: Allow resetting date selection
 * - Avoid duplicate key generation code in MessageCache
 * - resourceloader: Improve code coverage
 * - phpunit: Avoid use of deprecated getMock for PHPUnit 5 compat
 * - Reduce contention during view-based category count refreshes
 * - Add ar_ prefix back to usertext_timestamp USE INDEX
 * - phpunit: Remove unused assertEmpty fallback for PHPUnit 3 compat
 * - RCFilters UI: Use pixel instead of em for distancing the highlight dots
 * - Fix incorrect index name in new 1.28.0 installations
 * - Rename BaseTemplate::clear to getClear to avoid conflicts
 * - Add deleted archive titles search
 * - Apply image styling to mw:Video / mw:Audio for Parsoid content
 * - ClassicInterwikiLookup: Call static function selectFields statically
 * - mw.language.specialcharacters: Add Canadian Aboriginal group
 * - Clarify release notes for Opera 12.0-12.10 being Grade C
 * - Update OOjs to v2.0.0
 * - Make API documentation links language aware
 * - Improve qqq for i18n message at Special:Userrights
 * - RCFilters: React to popup 'ready' event
 * - mw.loader: Remove redundant compat code for IE <= 9
 * - mediawiki.log: Improve documentation
 * - jsduck: Unbreak live demos (mwNow undefined)
 * - Send integer ms to DB lag time guage instead of seconds
 * - Replace deprecated jQuery.isArray by Array.isArray
 * - resourceloader: Use Object.keys instead of map to get keys
 * - Remove support for jquery.placeholder shim
 * - resourceloader: Use Date.now for mw.now instead of '+new Date'
 * - resourceloader: Use Array#map instead of jQuery#map for arrays
 * - startup: Drop JavaScript support for ES3-only browsers
 * - Move new external libraries to correct RELEASE-NOTES section
 * - Update oyejorge/less.php v1.7.0.13 to v1.7.0.14
 * - Update cssjanus/cssjanus from 1.1.3 to 1.2.0
 * - Update composer-merge-plugin from 1.3.1 to 1.4.0
 * - Update monolog from 1.18.2 to 1.22.1
 * - RCFilters: Work around IE11 rendering issues
 * - RC Filters: correctly read default value for 'string_options' filters
 * - Add ?safemode=1 to disable user JS/CSS
 * - Add class for service discovery using DNS SRV records
 * - Add some common functions to BaseTemplate
 * - ApiPageSet: Follow RedirectSpecialArticle redirects

Vendor

 * - Update symfony/process 3.0.9 to 3.2.6
 * - Update justinrainbow/json-schema from 3.0.1 to 5.2.0
 * - Updated james-heinrich/getid3 v1.9.13 to v1.9.14
 * - Update oyejorge/less.php v1.7.0.13 to v1.7.0.14
 * - Update cssjanus/cssjanus from 1.1.3 to 1.2.0
 * - Update composer-merge-plugin from 1.3.1 to 1.4.0
 * - Update monolog from 1.18.2 to 1.22.1

AccountAudit

 * - Clarify that the licence is indeed GPL-2.0+

Babel

 * - Use tabs to indent in json

CirrusSearch

 * - Fix dumpIndex.php
 * - Add deleted archive titles indexing and search
 * - Add fixtures for ukrainian analysis config
 * - Enable Ukrainian Elastic/Morfologik Language Analyzer

Cite

 * - VisualDiff: Ignore changes to originalMw
 * - stylelint: Drop old 'no-unsupported-browser-features' rule
 * - build: Bump devDependencies to latest
 * - i18n: Don't try to spell out all the options that are allowed

Collection

 * - Use tabs to indent in json

ContentTranslation

 * - ApiContentTranslationConfiguration: fix configuration merging
 * - mw.cx.MwApiRequestManager: simplify
 * - CX2: Fix JS error with references
 * - CX2: Correct the source, target section identification for sentences
 * - CX2: Do not highlight translated sections
 * - CX2: Consolidate the init methods of ui translation units

Dashiki

 * - Fix bad config syntax
 * - Move as much config in extension.json as possible

DisableAccount

 * - Update blockDisabledAccounts script to account for expiring user groups

DonationInterface

 * - Add width=device-width to forms viewport meta
 * - Reset SmashPig lib to currently deployed version

Echo

 * - Revert "Do not use fancy styled badge on Modern and CologneBlue"

FlaggedRevs

 * - FlaggablePageView#changeSaveButton: Address i18n FIXME, use the brackets message

GeoData

 * - Remove old API b/c code

GlobalBlocking

 * - Use getConnectionRef to avoid leaking DB handles
 * - Make log type gblblock a user log type

GuidedTour

 * - Fix case of WebResponse->setCookie call
 * - bugzill -> phab link (and fix comment block)
 * - Tour: Fix initialize race condition

Insider

 * - Use tabs to indent in json

Interwiki

 * - Use tabs to indent in json

Kartographer

 * - stylelint: Remove VE-specific config
 * - Update justinrainbow/json-schema from ~3.0 to ~5.2

Linter

 * - Add misnested-tag linter category
 * - Spanish alias for Special:LintErrors
 * - Split statsd metrics by wiki
 * - Add deletable-table-tag linter category

Math

 * - stylelint: Drop unsupported no-unsupported-browser-features reference

MobileFrontend

 * - Clearly separate hook into Minerva specific vs mobile specific
 * - Add resource modules linter
 * - Log infoboxes being wrapped in containers
 * - Mobile specific skin changes are enabled inside a hook
 * - Compress head loaded SVGS
 * - Remove tagline margin
 * - Hygiene: Remove header-v2 and header-v1 code (correctly)
 * - Don't force enable banners or related pages in mobile web beta
 * - Preferences icon should show on Minerva desktop

PageImages

 * - UseGalleries is unused

PageTriage

 * - Show IE10 in browser warning as IE9 no longer supports JavaScript

Popups

 * - reducers: Make PREVIEW_SHOW require a token
 * - Hygiene: DRY up eventLogging reducer
 * - actions: Add token to PREVIEW_SHOW
 * - Remove dependency on es5-shim RL module
 * - Hygiene: Reduce nesting of test cases
 * - reducers: Reduce FETCH_COMPLETE if token matches
 * - actions: Add token to FETCH_COMPLETE
 * - Hygiene: Remove trailing whitespace
 * - actions: Correctly delay FETCH_COMPLETE
 * - Disable Previews when Navigation Popups Gadget is enabled
 * - Handle RESTBase 404
 * - renderer: Pass event to behavior for processing

ProofreadPage

 * - NS_IMAGE -> NS_FILE

QuickSurveys

 * - Only load bits of OOjs UI necessary for survey render

RelatedArticles

 * - Upgrade to eslint
 * - Remove Related Articles from desktop beta features

RevisionSlider

 * - Fix bar hover with pointer lines
 * - Highlight and clickability improvements
 * - Use a new config var to activate the alternate SliderView
 * - Show tooltips when dragging the sliders
 * - Factored out drag action from draggable
 * - Remove dark hover effect on bars
 * - Add hover and grab styles when using new slider pointers
 * - Replace deprecated method zone with utcOffset
 * - Improve SliderViewTwo load stability
 * - Introduce alternate SliderView
 * - Factor out setting of cursor pointers
 * - Fade out pointer lines while dragging / pointer animations
 * - Fix phan checks
 * - Remove 4px pointer margins
 * - Remove browser tests for beta feature setting

SyntaxHighlight_GeSHi

 * - SECURITY: Escape start argument before passing to pygments
 * - Update symfony/process from ~3.0 to ~3.2

TimedMediaHandler

 * - Fix seek on resolution switching for ogv.js playback
 * - Update ogv.js to 1.4.1
 * - Updated james-heinrich/getid3 v1.9.13 to v1.9.14
 * - Apply '-slices' param to ffmpeg for VP8 output
 * - build: Update stylelint to 0.4.1
 * - Remove duplicate hook for extension schema updates

Translate

 * - Insertables suggester class for $1, $2 and allow multiple suggesters

TwoColConflict

 * - Improve diff quality to match TableDiffFormatter

UniversalLanguageSelector

 * - Better language change tooltip positioning in 'interlanguage' mode

VisualEditor

 * - VisualDiff: Ignore changes to originalMw
 * - ArticleTarget: Refactor savedialog/target interaction
 * - Update VE core submodule to master (1338c50f5)
 * - Dropping IE9: Remove disableUneditableContent from DesktopArticleTarget
 * - stylelint: Drop no-unsupported-browser-features references
 * - Update VE core submodule to master (da9c49395)
 * - VisualDiff: Fetch original doc from Parsoid if fromEditedState
 * - Remove #wpTextbox1 fallback from ArticleTargetLoader#requestPageData
 * - Make Target#getVisualDiff async
 * - Don't set oldid if it is equal to curId
 * - MWVESwitchPopup: Follow-up 445f8b76a0525e0f1: apply adjustment to anchor instead
 * - MWVESwitchPopupWidget: Fix alignment by removing margin
 * - Allow loading progress bar to appear on skins other than Vector and MonoBook
 * - ArticleTarget: building summary in source mode, strip links from section titles
 * - Update VE core submodule to master (19a6c389c)
 * - MWExtension describeChanges: Actually return value of parent

WikimediaEvents

 * - Fix phpcs in AuthManagerStatsHandler
 * - rlfeature: Remove es5strict support tracking

WikimediaMessages

 * - stylelint: Drop 'no-unsupported-browser-features' rule, no longer supported
 * - RCFilters Guided tour: Append the dot to the popup
 * - Use pixel values instead of ems for stillDot size

Vector

 * - Remove specificity hack for mw.notification
 * - build: Make glob pattern readable
 * - Proper indentation applied to horizontal links in the vector skin